关闭

Android项目启动时短暂的黑屏白屏处理

标签: android用户体验经验线程博客
727人阅读 评论(1) 收藏 举报
分类:

转载请标明出处:http://blog.csdn.net/liu1252247624/article/details/51537952

最近开始玩博客了,以前只是看大神发然后自己水。后来我深刻意识到也应该写点东西,所以就想把自己一些经验和小技巧写下来,省得以后忘了也可以翻开看看。话说第一次写博客还有点小紧张呢( ^_^ )。


那么我们来谈谈这样一个问题。当你的项目需要用的欢迎界面有时候会出现短暂的黑屏或白屏,这样用户体验就不好了,所以今天教教大家如何处理这种问题。

其实,黑屏或者白屏是因为程序还没有加载布局就已经显示window窗口背景,而黑屏或者白屏就是window窗口背景。那么如何处理呢?看下面...


代码贴上

public class LoadingActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        /*还没有加载布局是睡眠1秒,确保黑屏或白屏效果明显*/
        try {
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }

        setContentView(R.layout.activity_loading);

        /*欢迎页面停留2秒并跳转MainActivity*/
        new Thread(){
            @Override
            public void run(){
                try {
                    Thread.sleep(2000);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
                startActivity(new Intent(LoadingActivity.this,MainActivity.class));
                finish();
            }
        }.start();
    }
}

以上的代码都是在LoadingActivity里写的下面才是重点

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.lg.emptydemo">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".LoadingActivity"
            android:theme="@style/FullTheme">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".MainActivity"
            android:theme="@style/AppTheme">
        </activity>
    </application>

</manifest>

在AndroidManifest.xml中设置LoadingActivity的风格

<style name="FullTheme" parent="AppTheme">
        <item name="windowActionBar">false</item>
        <item name="android:windowBackground">@drawable/img_frame_background</item>
        <item name="windowNoTitle">true</item>
        <item name="android:windowFullscreen">true</item>
        <item name="android:windowContentOverlay">@null</item>
    </style>

android:windowBackground属性设置窗口背景,把它设置成和欢迎界面一样的就大功告成了


源码地址:http://download.csdn.net/detail/liu1252247624/9535427


2
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:6173次
    • 积分:173
    • 等级:
    • 排名:千里之外
    • 原创:10篇
    • 转载:0篇
    • 译文:0篇
    • 评论:3条
    文章分类