delphi xe5 編譯的程序在啓動時會有短暫的黑屏出現,這個現象產生是由於啓動首個activity時會加載一些初始化數據,整個時間大約在2~3秒,如何處理?android
網上有些資料,這裏主要參考和整理了CSDN論壇上第42#liaobo的回覆。程序員
第一步:創建2個文件:loading.png 和 styles.xml,其中loading.png 是啓動時替代黑屏的圖片,styles.xml是對背景圖片的定義,其內容爲:es5
<resources>
<style name="MyTheme.NoTitleBar.CustomBackground" parent="@android:Theme.Black">
<item name="android:windowBackground">@drawable/loading</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowFullscreen">true</item>
<item name="android:windowContentOverlay">@null</item>
</style>
</resources>spa
特別須要注意的是:.net
(1)Delphi中代碼是大小寫不敏感的,因此Delphi程序員通常在寫程序時不太注意大小寫。而在Java下大小寫是敏感的,在styles.xml定義中「loading」的這個文件名必定要用小寫,不然在部署時會報文件名錯誤。3d
(2)這兩個文件能夠放在任何目錄下,我是放在了工程文件所在目錄下新建的res目錄。以下圖:調試
第二步:將創建好的2個文件加入到工程的部署文件列表中,操做是打開工程的部署菜單,點擊增長按鈕(Add Files),將創建好的2個文件分別加入到列表中,以下圖:orm
對加入的2個文件,修改PlatForm、RemotePath兩個屬性,其中PlatForm只選擇Android,以下圖:xml
按下F2或雙擊進入,修改RemotePath屬性,以下圖htm
其中
styles.xml的RemotePath爲 res\values\
loading.png的RemotePath爲 res\drawable-port\
以下圖:
第三步:Ctrl+F9編譯工程文件,並生成相關配置文件,打開工程文件所在目錄,找到工程缺省配置文件AndroidManifest.template.xml,以下圖:
用Delphi IDE 或記事本打開 AndroidManifest.template.xml 文件,查找如下文字:
android:theme="%theme%"
替換爲如下文字,注意是替換,不是新增。
android:theme="@style/MyTheme.NoTitleBar.CustomBackground"
第四步:再次編譯,部署到虛擬機,並運行後看到的啓動效果以下:
這裏須要說明的是:
有人說Delphi xe5 for Android的編譯太慢,其實不是這樣的。Delphi的編譯器在生成.so文件時是很是快的,在個人機器上大約3~5秒就完成。慢是慢在部署和安裝到虛擬機的時間。在我機器上生成apk文件大約須要10秒,而將apk文件下載到虛擬機上的時間取決於傳輸速率,在個人機器上是130k/s~500k/s之間,以下圖:
這個緩慢的下載過程超過了一分鐘,因此感受很慢。若是使用真實設備,好比手機或pad,因爲USB下載速度很快,反而用起來感受不錯,只是調試速度很慢。