android适应全面屏

一、设置最大宽高比
1、系统默认最大宽高比为1.86;随着手机市场的发展,这个宽高比已经不能满足需求的,会使部分屏幕宽高比较大的手机出现上下留黑边的情况,增加以下配置可使
mainfest增加配置:
<meta-data android:name="android.max_aspect" android:value="2.4"/>
注意:之前写的是2.1,但是小米商城没有过审,原因是红米一款新手机上下有黑边,该手机的宽高比已超过2.1
二、适配刘海屏
1、谷歌官方在Android p推出刘海屏适配的方法:
使布局顶到刘海的旁边,全面屏展示

//全屏显示
        getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN);

        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
            WindowManager.LayoutParams lp = getWindow().getAttributes();
            lp.layoutInDisplayCutoutMode = WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES;
            getWindow().setAttributes(lp);
        }

2、Android p以下需要适配各厂商的适配方法
(1)小米:

            try {
                int flag = 0x00000100 | 0x00000200 | 0x00000400;
                Method method = Window.class.getMethod("addExtraFlags",int.class);
                method.invoke(getWindow(), flag);
            } catch (Exception e) {

            }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容