2014-09-05 63 views
3

加載我的應用程序期間,我正在加載設置和其他內容,並希望能夠向用戶顯示消息。但是,這不適用於我針對iOS(iOSSimulator)的Delphi XE6 FireMonkey應用程序。在iOS上的程序加載期間無法顯示消息

當我在程序加載過程中調用ShowMessage或MessageDlg時,它會鎖定,並且不顯示任何內容。它可能進入了模式狀態,但由於沒有顯示消息,因此無法繼續。 即使在FormActivate的主窗體中,調用ShowMessage也不會顯示任何內容。

如何在加載應用程序時顯示消息?

+0

我對Firemonkey一無所知,但它聽起來像你需要加載設置和其他事情在一個單獨的線程 – SomeGuy 2014-09-05 10:13:55

+0

我希望能夠顯示模式消息,用戶可以回答例如是/否,這會影響應用程序的加載方式,但這可能違反了iOS的工作原理嗎? – Hans 2014-09-08 10:08:21

回答

0

我很驚訝,以前沒有人寫過關於這個,也沒有Firemonkey用戶回答我的問題。 允許您在程序加載過程中調用Showmessage,但是如果您這樣做,則應用程序鎖定,這不是恰當的行爲。在桌面應用程序中,在程序加載期間顯示消息是非常正常的,以防萬一發生故障。
我將一個500k的項目從VCL轉換爲FMX,由於我無法在iOS上顯示消息,我將不得不重構創建和加載代碼。

我打算實施的解決方案是製作故障安全解決方案,無論發生什麼情況都可以加載應用程序,然後當應用程序運行時,我可以顯示加載過程中出現的任何消息(用戶擁有的消息考慮)。

如果有人有更好的解決方案的信息或建議,請評論。

+0

在應用程序的一生中的某些時候,某些函數不能被調用似乎是完全合理的。爲什麼那麼無理? – 2014-09-17 09:38:01

+0

也許是因爲我已經使用了VCL太多年了:-)(在VCL中,我可以隨時致電Showmessage) – Hans 2014-09-17 10:28:25

+1

雖然移動是一個不同的世界,但FMX儘管表面上的相似之處在於VCL的巨大變化 – 2014-09-17 10:29:21

1

您可以使用加載符號和消息。它會滿足你的目的。你可以使用「MBProgressHud」,你不需要付出額外的努力,只需傳遞參數,它會顯示加載圖像和文本。請享用!

+0

這不是控制Cocoa控件嗎? – 2014-09-05 13:29:44

+0

謝謝您的回覆。 [MBProgressHUD](https://github.com/matej/MBProgressHUD)是一個自定義的Xcode組件。它看起來不錯,但在Delphi Firemonkey中需要一點點工作才能使用它。 – Hans 2014-09-08 10:04:54

+0

如果確定,請接受答案。 – nadim 2014-09-09 08:46:45

相關問題