每當我啓動我的應用程序,白色屏幕出現在標題欄的開頭。我不希望這個屏幕出現在我的應用程序中。我已經閱讀過以前的問題,但答案並不清楚。如何在Android中加載第一個活動之前刪除白屏?
我也使用啓動畫面,但在此之前出現白色屏幕。
我不想改變主題風格,因爲它要麼提高最低sdkVersion或變更的EditText,按鈕,複選框等風格
請幫助我,使我出這一點。
謝謝。
每當我啓動我的應用程序,白色屏幕出現在標題欄的開頭。我不希望這個屏幕出現在我的應用程序中。我已經閱讀過以前的問題,但答案並不清楚。如何在Android中加載第一個活動之前刪除白屏?
我也使用啓動畫面,但在此之前出現白色屏幕。
我不想改變主題風格,因爲它要麼提高最低sdkVersion或變更的EditText,按鈕,複選框等風格
請幫助我,使我出這一點。
謝謝。
前言:對於像這樣的問題,您應該發佈您的起始活動xml和onCreate()
及相關方法。
當Android啓動您的應用程序時,它通常會使用黑色視圖來表示它正在啓動,這是我選擇了您的主題/風格改爲白色。如果你正在加載視圖,那麼你應該只看到這個空白頁(白色或黑色)50-200毫秒(我現在無法找到這個谷歌文檔)。如果您在onCreate
方法中做了大量工作,則需要更長的時間。
通常爲了讓我的視圖顯示得更快,我將在加載後簡單地完成大部分鏈接工作。例如:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.initial_activity_layout);
//We use a handler so that the activity starts very fast
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
delayedInit();
}
}, 100);
}
此外,移動應用程序通常不應有閃屏,除非他們需要一段時間來加載內容(如遊戲,第一次啓動文件等),不應該只是使用品牌您的應用程序,或顯示您的公司名稱。
更新(2015年7月31日)
谷歌應用程序現在正在以具有閃屏的方向(見驅動器,Gmail等)
此外,你不應該做除了在onCreate()方法中取消引用視圖之外的任何其他工作。任何長時間運行的操作(如從內存中檢索信息(數據庫,首選項等)都應該在AsyncTaskLoader或AsyncTask中完成。
如果使用則AppCompatActivity在style.xml創建如下主題:
<style name="Theme.Transparent" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:windowNoTitle">true</item>
<item name="android:windowActionBar">false</item>
<item name="android:windowFullscreen">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowIsTranslucent">true</item>
</style>
而且在SplashActivity清單文件添加主題:
android:theme="@style/Theme.Transparent"
對該井感謝... 但它不工作,因爲我想.. :( 不滿意..:| – rishie
你看到白頁多長時間?如果只是50-200毫秒,那麼你可以做任何事情。與iOS不同,Android不使用啓動圖像,因爲這些活動應該很快啓動。 – RocketSpock
實際上它取決於RAM內存。如果有足夠的RAM空間,那麼加載所需的時間就會更少,而白色屏幕只會出現100-200毫秒。但是,如果可用RAM小於200 MB,則加載需要2-3秒,因此同一時間會出現白屏。 – rishie