![]() |
[FMX IOS] MessageDLG mit iOS 11.2.2
Moin, ich habe folgende Problemstellung:
Ich nutze in meiner App folgenden Code:
Delphi-Quellcode:
Mein Problem:
if MessageDlg('Datenimport starten?', TMsgDlgType.mtConfirmation, [TMsgDlgBtn.mbYes, TMsgDlgBtn.mbNo], 0) = mrYes then
DoStuff; Bis zur iOS Version 11.2.1 hat alles Wunderbar funktioniert. Mit der neuen iOS Version 11.2.2 friert die App ein, sobald ich versuche den Dialog zu öffnen. es erscheint nur das Fenster mit den beiden Buttons und danach kann ich nichts mehr machen. Hat jemand eine Idee, wie ich diese Problematik Lösen kann? habt ihr das selbe Problem? |
AW: [FMX IOS] MessageDLG mit iOS 11.2.2
Probiers mal so:
Delphi-Quellcode:
MessageDLG('Blubb',
TMsgDlgType.mtInformation, [TMsgDlgBtn.mbYes] ,0, procedure(const AResult: System.UITypes.TModalResult) begin if aResult = mrYes then begin end; end); |
AW: [FMX IOS] MessageDLG mit iOS 11.2.2
Moin, dein Lösungsansatz funktioniert an und für sich, Bleibt hier nun das Fenster mit der Abfrage stehen bis die angegebene Methode komplett durchgelaufen ist. kann man das Irgendwie Ändern?
|
AW: [FMX IOS] MessageDLG mit iOS 11.2.2
Schau Dir mal den Link an:
![]() Ansonsten einen neuen Thread starten. |
AW: [FMX IOS] MessageDLG mit iOS 11.2.2
Kann es sein, dass FMX.DialogService erst ab Berlin verfügbar ist? weil ich nutze derzeit noch Seattle. Und wenn ich versuche FMX.DialogService zu nutzen, dann kann der Name nicht aufgelöst werden.
|
AW: [FMX IOS] MessageDLG mit iOS 11.2.2
Modale Abfragen mit Messagedialogen sind schon länger nicht mehr möglich, auf Android noch länger.
Du must die Programmlogik dann so umstellen, dass es erst weiter geht, wenn die procedure aufgerufen wird. Mavarik |
AW: [FMX IOS] MessageDLG mit iOS 11.2.2
Habe es jetzt durch eine ganz wirre Kapselung hinbekommen...
Delphi-Quellcode:
Damit funktioniert der Aufruf unter iOS 11.2.2 wieder einwandfrei.
Begin
if msgYesNo('Nachricht') then DoSomeThing; End; function msgYesNo(msg:String):Boolean; Begin Result := MessageDlg(MSG, TMsgDlgType.mtConfirmation, [TMsgDlgBtn.mbYes, TMsgDlgBtn.mbNo], 0) = mrYes; End; (muss natürlich noch nen bisschen Testen, scheint aber zu funktionieren) |
AW: [FMX IOS] MessageDLG mit iOS 11.2.2
Zitat:
So macht man das nicht mehr... Modale MessageDialog sind auf mobilen Plattformen NICHT MEHR MÖGLICH |
AW: [FMX IOS] MessageDLG mit iOS 11.2.2
Zitat:
![]() Zitat:
|
AW: [FMX IOS] MessageDLG mit iOS 11.2.2
Emm...
Zitat:
Zitat:
Mavarik |
AW: [FMX IOS] MessageDLG mit iOS 11.2.2
Unter iOS wird Blocking auch unterstützt, das steht im Zitat. Und es geht hier um Seattle, da is nix mit deprecated.
|
AW: [FMX IOS] MessageDLG mit iOS 11.2.2
Android ist immer nonblocking, bei iOS ist blocking noch möglich:
Without ACloseDialogProc iOS Blocking |
AW: [FMX IOS] MessageDLG mit iOS 11.2.2
Zitat:
Zitat:
|
AW: [FMX IOS] MessageDLG mit iOS 11.2.2
ok... dann nochmal eine Frage meinerseits: Wie stelle ich das jetzt an, dass ich mein MessageDlg habe, und die ACloseDialogProc so ausgeführt wird, dass das Message Fenster dabei nicht mehr angezeigt wird? weil solange das angezeigt wird, kann ich auch noch auf die buttons drücken und entsprechende aktionen starten.
|
AW: [FMX IOS] MessageDLG mit iOS 11.2.2
Hallo,
vielleicht liefert dieser Link ein paar Ideen zum Thema MessageDlg [Mimicing MessageDlg on mobile platforms] ![]() Mfg Strally |
AW: [FMX IOS] MessageDLG mit iOS 11.2.2
Nicht getestet, müsste aber nach meinem Verständnis gehen:
Delphi-Quellcode:
MessageDLG('Blubb',
TMsgDlgType.mtInformation, [TMsgDlgBtn.mbYes] ,0, procedure(const AResult: System.UITypes.TModalResult) begin if aResult = mrYes then begin TThread.CreateAnonymousThread(procedure () begin //makeit end).Start; end; end); |
AW: [FMX IOS] MessageDLG mit iOS 11.2.2
![]() Im Prinzip die Eventmethode schnell wieder verlassen und dann irgendwie "verzögert" das die gewünschte Funktion ausführen. |
AW: [FMX IOS] MessageDLG mit iOS 11.2.2
Zitat:
Delphi-Quellcode:
Hittest := false;
|
AW: [FMX IOS] MessageDLG mit iOS 11.2.2
Zitat:
|
AW: [FMX IOS] MessageDLG mit iOS 11.2.2
Zitat:
Tja, schade das ![]() Mavarik |
AW: [FMX IOS] MessageDLG mit iOS 11.2.2
..."Tja, schade das diese Idee nicht auf mehr Begeisterung gestoßen ist..."...
du warst nicht hartnäckig genug oder die Umfrage war nicht präsent genug;) Frag doch den ChefMod ob er nicht ne für alle sichtbare "zentrale" Umfrage für 1..2 Wochen auf der Startseite einschalten könnte. Neben deinen da genannten Themen gäbe es ja aktuell zusätzlich noch als weitere sinnvolle Themenblöcke "Installation IDE,.NET,JAVA,SDK's und PA-Server" und "Voll virtualisierte Einrichtung" jeweils mit&für ANDROID,IOS,OSX,FMXLINUX,CROSSVCL,WINDOWS. |
AW: [FMX IOS] MessageDLG mit iOS 11.2.2
Zitat:
je nachdem welche Phone-Funktionen man im Thread benutzten will. Die sind wohl nicht Alle so sauer threadsafe wie sie sein sollen. Deshalb ist das einfache "grau hinterlegen" wie Mavarik vorschlägt schon universeller. Muss man halt probieren wann es animiert gut geht, und wann besser nicht. Man kann auch eine eigene Animation machen, die dann etwas "langsamer" läuft, aber optisch trotzdem gut aussieht. Rollo |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:41 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