最近项目里Android版本的App遇到一个问题,如何用小米的Mix2全屏显示activity?
由于项目中的activity继承自Activity,发现使用普通方法行不通,如设置:
titlerequestWindowFeature(Window.FEATURE_NO_TITLE);//全屏getWindow().setFlags(WindowManager.LayoutParams. FLAG_FULLSCREEN ,
WindowManager.LayoutParams. FLAG_FULLSCREEN);
此方法只能填充除状态栏和任务栏之外的空间,想要延时到状态栏和任务栏里,只能使用其他方法。
这里我介绍三个步骤:
1. 修改activity 继承自 AppCompatActivity.
2. 找到styles.xml文件,加入如下样式。
注意:修改主题名称时,将AndroidManifest.xml 中的主题样式替换掉
3.在Activity的onCreate中,加入如下代码和函数:
//隐藏标题栏的代码
requestWindowFeature(Window.FEATURE_NO_TITLE);
//设置状态栏和任务栏透明的代码
translucentStatusBar(getWindow());
//设置状态栏和任务栏透明的代码 具体函数实现
public voidtranslucentStatusBar(Window window)
{
if(window ==null)return;
if(Build.VERSION.SDK_INT>= Build.VERSION_CODES.LOLLIPOP)
{
window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN| View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.setStatusBarColor(Color.TRANSPARENT);
}
else if(Build.VERSION.SDK_INT>= Build.VERSION_CODES.KITKAT)
{
window.addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
}
}
完成以上三部操作,就能看到Mix2的全屏效果了,实图如下:
网友评论