我如何在 FMX 中使用 showmodal?

how do i work with showmodal in FMX?

我正在尝试为我的主 android 表单创建一个登录表单,所以我做了这样的事情

var
  CanGo: Boolean;

begin
  Application.Initialize;
  Application.CreateForm(TForm1, Form1);
  loginfrm := Tloginfrm.Create(nil);
    try
    loginfrm.ShowModal;
    CanGo := loginfrm.LoginSuccess = true;
  finally
    FreeAndNil(loginfrm);
  end;
  if CanGo then
  Application.Run;
end.

我一直在 win32 应用程序中执行此操作并且它工作得很好,当我尝试在 android 应用程序上执行相同的操作时停止在触摸屏上并且不会显示登录表单,[= 上的显示模式是否不同15=]?我做错了什么?

SO 上有很多类似的问题。阅读文档:

FMX.Forms.TCommonCustomForm.ShowModal

Caution: Modal dialog boxes are not supported in Android apps. Instead of calling ShowModal, you should call Show, and have the form return and call your event. We recommend do not use modal dialog boxes on either of the mobile platforms (iOS and Android) because unexpected behavior can result. Avoiding usage of modal dialog boxes eliminates potential problems in debugging and supporting your mobile apps.

自引入移动平台以来,Embarcadero 提出了不同的调用方式 ShowModal。它们都有缺陷,现在文档告诉你根本不要使用它们。