我有一个使用模拟器在 Mac 上运行良好的 iOS 应用程序。我已经完成了设置配置和证书的必要步骤,并已成功调试,然后临时将一个非常简单的测试应用程序部署到 iPad。
但是,在尝试部署使用 datasnap 服务器的应用程序并且实际上做了一些认真的工作时,我似乎遇到了问题。我可以启动应用程序,并逐步执行代码,直到在 MainForm 的 onCreate 方法中显示模式表单。
然后表单不显示,我仍然只能看到启动画面。我不能在创建时以模态方式显示其他表单吗?我尝试将所有代码移到展示中,因为我看到一个简短的提及另一个用户遇到了类似的问题并且这对他有用。但这对我不起作用。整个过程在模拟器上运行良好。
这是我的主窗体的 onCreate 方法的开始
Ini := TUserIniFile.Create;
sMachineName := lIni.ReadString('name_preference', 'Machine Name or IP');
sPort := lIni.ReadString('port_preference', 'Port Number');
fmConfig := TfmConfig.Create(Self);
fmConfig.MachineName := sMachineName;
fmConfig.Port := sPort;
if fmConfig.ShowModal = mrOK then begin
//setup DREST
DSREST.Params.Values['Port'] := fmConfig.Port;
DSREST.Params.Values['HostName'] := fmConfig.MachineName;
当调用 fmConfig.ShowModal 时,程序停止(显然,等待模态窗体的返回结果),但窗体从未显示,此时我仍然只能在调试模式下看到启动窗体。然而,这一切在模拟器中都可以正常工作。
显示此类特定于部署到设备而不是模拟器的表单是否有一些限制?
编辑:我已经删除了模式表单(我在 on show 方法中也有一个登录表单),现在我至少可以让应用程序在设备上以调试模式运行。这是对模态形式的真正限制吗?