Android开发-设置DialogFragment全屏显示

默认的DialogFragment并不是全屏,但有些需求需要我们将对话框设置为全屏(内容全屏),Android并没有提供直接的API,通过其它不同的方法设置全屏在不同的机型上总有一些诡异的问题,经过测试,下面的方法可以实现各个机型的全屏。
测试 SDK Version = 28

创新互联的客户来自各行各业,为了共同目标,我们在工作上密切配合,从创业型小企业到企事业单位,感谢他们对我们的要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。专业领域包括网站设计、成都网站建设、电商网站开发、微信营销、系统平台开发。

覆写Fragment的onStart()方法:

@Override
public void onStart() {
    super.onStart();
        Dialog dialog = getDialog();
        if (dialog != null) {
            Window window = dialog.getWindow();
            if (window != null) {
                int width = ViewGroup.LayoutParams.MATCH_PARENT;
                int height = ViewGroup.LayoutParams.MATCH_PARENT;
                window.setLayout(width, height);
            }
        }
    }
}

上面的方法可以成功设置Dialog为全屏,但是如果在全屏的Dialog顶部有View的情况下,在某些机型View会被状态栏遮住(比如三星S9),这时需要一些特殊的设置来处理,可以参考我的文章:解决DialogFragment在全屏时View被状态栏遮住的问题

本文原始地址,如有更多疑问,请参考我的其它Android相关博客:我的博客地址


本文标题:Android开发-设置DialogFragment全屏显示
当前链接:http://hxwzsj.com/article/pgpcho.html

其他资讯

Copyright © 2025 青羊区翔捷宏鑫字牌设计制作工作室(个体工商户) All Rights Reserved 蜀ICP备2025123194号-14
友情链接: 成都网站建设公司 网站建设改版 广安网站设计 成都品牌网站设计 营销型网站建设 重庆网站设计 网站制作报价 成都网站制作 成都网站制作 网站建设费用 手机网站制作 成都网站制作 成都网站建设公司 专业网站建设 网站制作 高端品牌网站建设 外贸网站设计方案 成都h5网站建设 企业网站建设 手机网站设计 重庆网站建设 成都网站制作