最近在做一个原生的android项目,IDE使用的时androidstudio, 其中涉及到欢迎界面和状态栏以及标题栏的修改,特意说一下 Android 6.0以上版本 状态栏透明和隐藏标题栏方法。
首先 隐藏状态栏全屏加载图片实现欢迎界面。主要修改如下
Values 文件夹下创建 style.xml 增加无标题栏主题
- <?xml version="1.0" encoding="utf-8"?><resources>
- <style name="Theme.AppCompat.Light.NoActionBar" parent="@style/Theme.AppCompat.Light">
- <item name="windowActionBar">false</item>
- <item name="windowNoTitle">true</item>
- </style>
- </resources>
复制代码注意,这里的 parent = 后面的部分要和你的app当前使用主题匹配。 配置好样式文件以后,我们就要修改app 框架文件 AndroidMainifest.xml 将欢迎界面的 activity 引用刚才配置好的无标题栏主题。 - <activity
- android:name=".ui.WelComeActivity"
- android:theme="@style/Theme.AppCompat.Light.NoActionBar"
- android:exported="true">
复制代码现在界面不显示标题栏和标题了,我们的状态栏还是会显示,欢迎页面应该是全屏,且没有状态栏的。现在我们在 欢迎界面的 activity oncreate 方法里面增加下面逻辑。
- getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN|View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
- getWindow().setStatusBarColor(Color.TRANSPARENT);
- new Handler().postDelayed(new Runnable() {
- @Override
- public void run() {
- Intent intent = new Intent(WelComeActivity.this, LoginActivity.class);
- startActivity(intent);
- WelComeActivity.this.finish();
- }
- }, 2500);
-
- setContentView(R.layout.activity_wel_come);
复制代码上面代码的作用是将状态栏设置为全屏浅色模式,然后将状态栏透明,这样 欢迎界面 activity 添加一个全屏的imageview 增加3秒定时器事件就可以实现欢迎界面了。 注意这段代码是在 绑定视图前面定义, setContentView(R.layout.activity_wel_come); 的前面。 imageview 的宽和高都要设置成全屏,而且要图片拉伸,这样就做好欢迎界面了。 真机测试效果,注意看顶部没有状态栏和底部的虚拟按键。一切正常!!
|