android - Android 上 Delphi Firemonkey 中的模态弹出窗口
问题描述
我正在开发一个 Android 应用程序,但我需要一个弹出窗口,我可以在代码中调用它来创建模态弹出窗口,因此在代码中设置一个变量。我试图将它分布在不同的函数中,并且它起作用了,但是当从一个 Funktion 跳转到另一个 Funktion 时,遵循代码变得非常糟糕......
我想要做的就像函数一样MessageDlg()
,但它没有在Android上实现。
我已经尝试过MessageDlg()
使用匿名函数,但是在我按下按钮之前它也会运行下面的代码。
我需要类似的东西,但在 Android 上,if 语句将在我输入输入之前执行。
MyInt: Integer;
begin
MessageDlg('You want to Continue?', System.UITypes.TMsgDlgType.mtInformation,
[System.UITypes.TMsgDlgBtn.mbYes, System.UITypes.TMsgDlgBtn.mbNo], 0,
procedure(const AResult: TModalResult) begin
case AResult of
mrYes:
MyInt := 0;
mrNo:
MyInt := 1;
end;
end);
if MyInt = 0 then
//Do Something
else
//Do Something
end;
我需要它来处理“单击按钮以继续事件”之类的东西
解决方案
您必须将您的逻辑移动到匿名方法中。这将在用户单击适当的按钮后执行。在这种情况下,您也不需要MyInt
变量。
begin
MessageDlg('You want to Continue?', System.UITypes.TMsgDlgType.mtInformation,
[System.UITypes.TMsgDlgBtn.mbYes, System.UITypes.TMsgDlgBtn.mbNo], 0,
procedure(const AResult: TModalResult) begin
case AResult of
mrYes:
begin
//Do Something (MyInt = 0 branch)
end;
mrNo:
begin
//Do Something (MyInt = 1 branch)
end;
end;
end);
end;
推荐阅读
- angular - 角度鼠标悬停最小反应时间
- python-3.x - 如何根据 groupby 和出现次数添加列?
- javascript - 如何解决nodejs + graphql上的异步s3解析器上传?
- text-processing - 如何从电影剧本中只提取主角的对话
- powershell - 如何通过任务调度程序命令行调度 powershell 脚本?
- java - java google drive api V3 MultiPart & Resumable Upload
- ios - 运行 pod install 时出错 - 在目标 `Runner` 上自动分配版本为 `8.0` 的平台`iOS`
- python - 如何在 Python 中解决非线性系统
- php - 在 Laravel 中使用 Fetch API 拉取数据时,`$request->ajax()` 未检测到 ajax 请求
- orm - Api 服务器与多个连接组织的正确策略