刚从csdn转战51,这是在51写的第一篇博客

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

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

publicclassLoadingActivityextendsAppCompatActivity{@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);//还没有加载布局是睡眠1秒,确保黑屏或白屏效果明显try{Thread.sleep(1000);}catch(InterruptedExceptione){e.printStackTrace();}setContentView(R.layout.activity_loading);//欢迎页面停留2秒并跳转MainActivitynewThread(){@Overridepublicvoidrun(){try{Thread.sleep(2000);}catch(InterruptedExceptione){e.printStackTrace();}startActivity(newIntent(LoadingActivity.this,MainActivity.class));finish();}}.start();}}

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

<?xmlversion="1.0"encoding="utf-8"?><manifestxmlns:android="http://schemas.android.com/apk/res/android"package="com.lg.emptydemo"><applicationandroid:allowBackup="true"android:icon="@mipmap/ic_launcher"android:label="@string/app_name"android:supportsRtl="true"android:theme="@style/AppTheme"><activityandroid:name=".LoadingActivity"android:theme="@style/FullTheme"><intent-filter><actionandroid:name="android.intent.action.MAIN"/><categoryandroid:name="android.intent.category.LAUNCHER"/></intent-filter></activity><activityandroid:name=".MainActivity"android:theme="@style/AppTheme"></activity></application></manifest>

在AndroidManifest.xml中设置LoadingActivity的风格

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

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

源码地址:http://down.51cto.com/data/2221953