android 启动闪现黑屏问题及分析

app在启动时和activity跳转的时候时常会出现黑屏闪现的问题,分析activity的生命周期onCreate()->onStart()->onResume()后activity的UI才显示出来,所以这3步如果处理时间相对过久就会出现黑屏一闪而过的现象,尽量减少这3步的处理时间不能根本解决问题,我们可以设置style使不会出现黑屏问题,比如可以设置背景图style:

<style name="CustomStyle" parent="android:Theme">

<item name="android:windowBackground">@drawable/ipod_bg</item>

<item name="android:windowNoTitle">true</item> 

</style>

还可以设置透明style:

<style name="CustomStyle" parent="android:Theme"> 
<item name="android:windowIsTranslucent">true</item>

<item name="android:windowNoTitle">true</item> 

</style>

可以在activity是属性中设置上述theme。

 

另theme和style的区别:style作用于view控件,theme作用于activity,当一个应用使用了theme而其中的activity使用了style时,style的优先级高于theme;

来看一下Launcher里面配置workspace的一个Style:

<style name="WorkspaceIcon">
        <item name="android:layout_width">match_parent</item>
        <item name="android:layout_height">match_parent</item>
        <item name="android:layout_gravity">center</item>
        <item name="android:gravity">center_horizontal</item>
        <item name="android:singleLine">true</item>
        <item name="android:ellipsize">marquee</item>
        <item name="android:textSize">12sp</item>
        <item name="android:textColor">#FFF</item>
        <item name="android:shadowRadius">2.0</item>
        <item name="android:shadowColor">#B0000000</item>
    </style>
style可以理解为一组属性的集合,方便不同发view设置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值