首先是appclication的主题设置,主要是为其背景色设置为白色,如果不设置的话,状态来会有一个黑色背景
<application
android:name=".app.App"
android:theme="@style/AppTheme">
</application>
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="windowNoTitle">true</item>
<item name="android:windowBackground">@color/white</item>
<item name="android:windowContentOverlay">@null</item>
</style>
然后就是启动界面的主题 ,父主题是全屏无标题主题,然后为activity的窗口背景设置启动背景图
<style name="welcomeThemeStyle" parent="@android:style/Theme.Black.NoTitleBar.Fullscreen">
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowNoTitle">true</item>
<item name="android:background">@mipmap/welcome</item>
</style>
启动界面的xml文件可以为空内容,主要根据具体业务,因为我这里的启动界面没有任何的交互逻辑,所以我这里就是空的
<?xml version="1.0" encoding="utf-8"?>
<View xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent"
>
</View>
activity文件里面,我原先有设置全屏和透明状态栏透明底部虚拟导航栏,如下
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().requestFeature(Window.FEATURE_NO_TITLE);
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
Window window = getWindow();
window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS
| WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.setStatusBarColor(Color.TRANSPARENT);
}
setContentView(R.layout.activity_welcome);
}
所以就引来了相应的问题,具体就是因为设置了底部虚拟导航栏为透明,会导致底部导航栏空出一部分空间,然后整个启动的界面就会"下陷"一部分高度,因为启动界面是一张图片,就会出现图片的"抖动"问题,所以这里什么也不设置即可;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if ((getIntent().getFlags() & Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT) != 0) {
finish();
return;
}
setContentView(R.layout.activity_welcome);
}
网友评论