Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   MessageDialog auf Android (https://www.delphipraxis.net/201337-messagedialog-auf-android.html)

juelin 13. Jul 2019 08:59

MessageDialog auf Android
 
Hallo Leute,
ich schreibe gerade mein erstes Programm mit Firemonkey.
Nachdem ich mit XE5 so viele Probleme hatte bin ich auf Delphi 10.3 umgestiegen.
Habe Windows 10 und Handy Sony Xperia.

Nun zu meinem Problem:
Früher benutzte ich
JaNein:=messagedlg('Programm-Ende ?', TMsgDlgType.mtConfirmation, [TMsgDlgBtn.mbYes, TmsgDlgBtn.mbNo], 0);

Das ist aber veraltet und nach Recherge benutze ich jetzt (mit FMX.DialogService)
markieren
Delphi-Quelltext
Delphi-Quellcode:
  var MR: TModalResult;
    ……
      MR := mrNone;
      TDialogService.MessageDialog('Programm-Ende ?', System.UITypes.TMsgDlgType.mtConfirmation,
        [System.UITypes.TMsgDlgBtn.mbYes, System.UITypes.TMsgDlgBtn.mbNo], System.UITypes.TMsgDlgBtn.mbYes, 0,
        Procedure(Const AResult: System.UITypes.TModalResult)
        Begin
          MR:=AResult;
        End);
      While MR = mrNone Do
      begin
        Application.ProcessMessages;
      end;
Aber auf dem Handy wird die MessageDialogBox nicht angezeigt.
Und deshalb kommt das Programm aus der WHILE-Schleife nicht raus. (ich kann ja keinen Ja/Nein Button drücken).

Kann mir da jemand einen Tipp geben?

Danke und Gruß
Jürgen

philipp.hofmann 13. Jul 2019 10:06

AW: MessageDialog auf Android
 
Android und iOS kann diese Art von Dialogen nicht (Modal vs. NonModal). Ich habe mir eigene Dialoge gebaut, die sich über die Anwendung "legen", wo ich dann meine Fragen stelle.

Schokohase 13. Jul 2019 10:16

AW: MessageDialog auf Android
 
Zitat:

Zitat von philipp.hofmann (Beitrag 1436656)
Android und iOS kann diese Art von Dialogen nicht (Modal vs. NonModal). Ich habe mir eigene Dialoge gebaut, die sich über die Anwendung "legen", wo ich dann meine Fragen stelle.

Seit wann kann Android/iOS mit dem DialogService nicht arbeiten? Gibt es da schon einen Eintrag im QP?

juelin 13. Jul 2019 10:50

AW: MessageDialog auf Android
 
Philipp,
kannst du mir mal ein Beispiel zu kommen lassen,
von deiner Dialogbox?
Danke und Gruß
Jürgen

philipp.hofmann 13. Jul 2019 17:33

AW: MessageDialog auf Android
 
Zumindest kann man nicht so ohne weiteres mit den Dialogen arbeiten, weil man der Code nicht wie unter Windows wartet.
Es ist also einiges an Umstellungsaufwand notwendig und v.a. muss für den User klar sein, wo er sich befindet.

Ich nutze daher Panels und zeige dann nur noch das Frage-Panel an und wenn die Antwort gegeben wurde, steige ich wieder in den gewünschten Folgecode ein.
Die Methode, die das Fragepanel aufgerufen hat, wird aber direkt beendet, damit nichts klemmt.

Ich hoffe damit wird es etwas klarer.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:10 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz