zoukankan      html  css  js  c++  java
  • Android 启动白屏或者黑屏闪现解决

    1、设置Style


    //1、设置背景图Theme
    <style name="Theme.AppStartLoad" parent="android:Theme">  
      <item name="android:windowBackground">@drawable/ipod_bg</item>  
      <item name="android:windowNoTitle">true</item>  
    </style>
    
    //2、设置透明Theme
    
    <style name="Theme.AppStartLoadTranslucent" parent="android:Theme">  
      <item name="android:windowIsTranslucent">true</item> 
      <item name="android:windowNoTitle">true</item>  
    </style>
    
    

    上面我定义了两种Theme,第一种Theme就是设置一张背景图。当程序启动时,首先显示这张背景图,避免出现黑屏。第二种Theme是把样式设置为透明,程序启动后不会黑屏而是整个透明了,等到界面初始化完才一次性显示出来。下面说说两种方式的优缺点:

    • Theme1 程序启动快,界面先显示背景图,然后再刷新其他界面控件。给人刷新不同步感觉。
    • Theme2 给人程序启动慢感觉,界面一次性刷出来,刷新同步。

    2、修改AndroidManifest.xml

    为了使上面Theme生效,我们需要设置一些Activity的Theme

    <application
      android:allowBackup="true"
      android:icon="@drawable/ipod_icon"
      android:label="@string/app_name"
      android:launchMode="singleTask">
    
    <!-- iPod主界面 -->
    <activity
      android:name="com.apical.apicalipod.IPodMainActivity"
      <!-- 使用上面定义的样式 mythou-->
      android:theme="@style/Theme.AppStartLoad"
      android:label="@string/app_name" >
      <intent-filter>
      <action android:name="android.intent.action.MAIN" />
      <category android:name="android.intent.category.LAUNCHER" />
      </intent-filter>
    </activity>
    
    //......
    
    </application>
  • 相关阅读:
    英文半字节压缩编码技术
    博弈翻硬币游戏
    POJ 2015 Permutation Code
    8051、ARM和DSP指令周期的测试与分析
    Huffman编码
    CentOS 命令提示符颜色及样式详解
    JAVA程序员面试32问
    面向抽象编程:接口和抽象类
    初学实用:实例讲解Java中的接口的作用
    C#和Java的区别
  • 原文地址:https://www.cnblogs.com/netcorner/p/4883069.html
Copyright © 2011-2022 走看看