![]() |
iOS Comboboxen, ShowMessage Probleme
Hallo zusammen,
ich stehe aktuell vor einem Problem, das den Release unserer neuen App Version verhindert. Folgendes Problem tritt ab Delphi 10.2.x unter iOS auf: Wenn man aus dem Hauptformular ein zweites Fenster aufruft, und dort eine Combobox, DateEdit, TimeEdit oder eine ShowMessage aufruft, sind keine Eingaben mehr möglich. Das Problem tritt nicht immer auf. Teilweise muss das 2. Fenster mehrmals geschlossen und wieder geöffnet werden bis der Fehler auftritt. Es kann dann in den Comboboxen nicht mehr gescrollt werden. Bei ShowMessages lässt sich der OK Button nicht betätigen. Das Problem habe ich bereits hier geschildert: ![]() Folgendes Setting: - Delphi 10.2.3 Tokyo - aktuelle xCode Version - iOS 11 SDK - Nachzustellen auf: iPhone SE, iPad Pro, iPhone 6 (Alle Geräte mit iOS 11.x.x) Der Support von Embarcadero konnte mir hier leider nicht weiterhelfen, da Sie das Problem nicht nachstellen konnten. Sie haben mir dazu geraten zurück auf Delphi 10.1 Berlin zu gehen. Dort tritt der Fehler nicht auf. Allerdings lassen sich hier keine Apps mit dem iOS SDK 11 erstellen, was nun vom AppStore Voraussetzung ist. Delphi 10.1 Berlin war leider die letzte stabile Version mit der man noch einigermaßen arbeiten konnte. Konnte dies bisher jemand nachstellen bzw. hat das gleiche Problem oder sogar eine Lösung? Grüße Nick. |
AW: iOS Comboboxen, ShowMessage Probleme
Vielleicht können Dir die
![]() |
AW: iOS Comboboxen, ShowMessage Probleme
Die Komponenten könnten eine alternative für die Comboboxen sein.
Leider besteht dann aber weiterhin das Problem mit der ShowMessage. Ich wundere mich darüber das dieser Fehler noch nicht bekannt ist. Es beeinträchtigt ja fast jede iOS App die mit Delphi entwickelt wird. |
AW: iOS Comboboxen, ShowMessage Probleme
Lösung: Android.
OK, Spaß bei Seite. Das alte Delphi kann man nicht irgendwie dazu überreden das aktuelle xCode/SDK zu nutzen? |
AW: iOS Comboboxen, ShowMessage Probleme
Vielleicht ein Workaround, ein TPopup anstelle ShowMessage ?
|
AW: iOS Comboboxen, ShowMessage Probleme
Zitat:
Wenn ich auf Delphi 10.1 arbeite stelle ich die Befehlszeilentools von xCode zurück und nehme den PA-Server 18. Tut man das nicht bricht Delphi beim Linken ab. |
AW: iOS Comboboxen, ShowMessage Probleme
Hier ein Beispiel für TPopup Workaround
![]()
Delphi-Quellcode:
unit PopupTest;
interface uses System.SysUtils, System.Classes, FMX.Types, FMX.Controls, FMX.Layouts, FMX.StdCtrls; type TPopupTest = class(TPopup) private FPanel : TPanel; FLayoutButton : TLayout; FCloseButton : TButton; FSaveButton : TButton; FClientArea : TLayout; protected procedure OnClose(Sender: TObject); procedure OnSave(Sender: TObject); public constructor Create(AOwner: TComponent); override; destructor Destroy; override; published { Published declarations } end; procedure Register; implementation procedure Register; begin RegisterComponents('Samples', [TPopupTest]); end; { TPopupTest } constructor TPopupTest.Create(AOwner: TComponent); var PopPanel: TPanel; PopLayout: TLayout; PopClose: TButton; PopSave: TButton; PopClientArea: TLayout; begin inherited; PopPanel := TPanel.Create(Owner); PopPanel.Position.X := 0; PopPanel.Position.Y := 0; PopPanel.Margins.Left := 10; PopPanel.Margins.Right := 10; PopPanel.Margins.Top := 10; PopPanel.Margins.Bottom := 10; PopPanel.StyleLookup := 'flyoutpanel'; PopPanel.Parent := Owner as TFmxObject; PopPanel.Align := TAlignLayout.alClient; PopPanel.Visible := True; PopLayout := TLayout.Create(Owner); PopLayout.Parent := PopPanel; PopLayout.Align := TAlignLayout.alBottom; PopLayout.Height := 22; PopClose := TButton.Create(Owner); PopClose.Parent := PopLayout; PopClose.Align := TAlignLayout.alLeft; PopClose.StyleLookup := 'flyoutbutton'; PopClose.Text := 'Fechar'; PopClose.OnClick := OnClose; PopSave := TButton.Create(Owner); PopSave.Parent := PopLayout; PopSave.Align := TAlignLayout.alLeft; PopSave.StyleLookup := 'flyoutbutton'; PopSave.Text := 'Salvar'; PopSave.OnClick := OnSave; PopClientArea := TLayout.Create(Owner); PopClientArea.Parent := PopPanel; PopClientArea.Align := TAlignLayout.alClient; FPanel:= PopPanel; FLayoutButton:= PopLayout; FSaveButton:= PopSave; FCloseButton:= PopClose; FClientArea:= PopClientArea; Width := 100; Height := 100; end; destructor TPopupTest.Destroy; begin FClientArea.Free; FCloseButton.Free; FSaveButton.Free; FLayoutButton.Free; FPanel.Free; inherited; end; procedure TPopupTest.OnClose(Sender: TObject); begin end; procedure TPopupTest.OnSave(Sender: TObject); begin end; end. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:56 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz