1. 程式人生 > >Android 橫豎屏切換 引起的1s左右黑屏

Android 橫豎屏切換 引起的1s左右黑屏

從一個豎屏Activity,跳轉到一個橫屏Activity,在橫屏頁面返回,遇到了1s左右的黑屏.產生黑屏的原因是豎屏Activity重新走oncreate()--onresume()生命週期,在此期間會有黑屏.

解決方案:在AndroidManifest中該Activity下 設定 android:configChanges="orientation|keyboardHidden|screenSize"

這樣就不會重走oncreate()生命週期,則是呼叫onConfigurationChanged();


    @Override
    public void onConfigurationChanged(Configuration newConfig) {
        super.onConfigurationChanged(newConfig);
        if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) { 
            //橫屏
        } else if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) { 
            //豎屏
        }
    }