// 设置无Title
requestWindowFeature(Window.FEATURE_NO_TITLE);
//设置应用全屏,必须写在setContentView方法前面!!!记得!
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
/**
* 设置全屏显示
*/
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN|View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
WindowManager.LayoutParams lp = getWindow().getAttributes();
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
lp.layoutInDisplayCutoutMode = WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES;
}
// getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
getWindow().setAttributes(lp);
关键:LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES
否则会出现状态栏黑条,占用空间问题

这段代码用于在Android应用中实现无标题全屏显示,并处理刘海屏的显示问题。通过设置Window特性,隐藏标题栏,全屏显示,并在Pie及以上版本适配显示区域切口,避免状态栏出现黑条并占用空间。
658

被折叠的 条评论
为什么被折叠?



