天天看點

android activity 閃屏 動畫,Android Activity啟動時避免黑色閃屏有2種方法

避免黑色閃屏有2種方法,分别為:

1.為 Theme 設定背景圖;

給人程式啟動快的感覺,界面先顯示背景圖,然後再重新整理其他界面控件,重新整理不同步。

@drawable/splash_bg

2.為 Theme 設定透明屬性。

給人程式啟動慢的感覺,界面會一次性刷出來,重新整理同步。

true

上面的2種 Theme 中,為 Theme 設定背景圖後程式在啟動的時候,會首先顯示這張圖,避免發生黑屏;為 Theme 設定透明屬性,程式啟動後不會黑屏而是透明,等到界面初始化完成後才一次性顯示出來。下面是

這樣設定存在的問題:

原先在配置了activity的切換動畫效果,設定完android:windowIsTranslucent=true之後切換動畫失效了。

解決方案:

@style/Animation.Activity.Translucent.Style

@android:color/transparent

true

@anim/base_slide_right_in

@anim/base_stay_orig

@anim/base_stay_orig

@anim/base_slide_right_out

@anim/base_slide_right_in

@anim/base_stay_orig

@anim/base_stay_orig

@anim/base_slide_right_out

@anim/base_slide_right_in

@anim/base_stay_orig

@anim/base_stay_orig

@anim/base_slide_right_out

@anim/base_slide_right_in

@anim/base_slide_right_out

配置style繼承的parent為:

@anim/base_slide_right_in

@anim/base_slide_right_out

然後讓apptheme的

android:windowAnimationStyle為上面的style

@style/Animation.Activity.Translucent.Style

@android:color/transparent

true

如果想在所有的activity切換時候使用該theme,可以配置application,也可以單個單個配置在activity裡面。

當然首頁退出的時候可以單獨配置MainActivity的退出動畫和進入動畫

@anim/slide_right_out

MainActivity的退出和進入動畫可以引用系統提供的,但是好像在style裡面配置引用不了有些系統的anim,

在檔案夾sdk\platforms\android-20\data\res下面,activity_open_enter.xml,activity_close_exit.xml可以直接拷貝到項目中,稍做修改即可。單獨寫一個進入或者退出,然後其它預設。