Android DialogFragment 底部弹框 不留边距

image.png

重写DialogFragment里的onStart方法

@Override
public void onStart() {
    super.onStart();
    // 设置宽度为屏宽, 靠近屏幕底部。
    Window win = getDialog().getWindow();
    // 一定要设置Background,如果不设置,window属性设置无效
    win.setBackgroundDrawable( new ColorDrawable(Color.TRANSPARENT));
 
    DisplayMetrics dm = new DisplayMetrics();
    getActivity().getWindowManager().getDefaultDisplay().getMetrics( dm );
 
    WindowManager.LayoutParams params = win.getAttributes();
    params.gravity = Gravity.BOTTOM;
    // 使用ViewGroup.LayoutParams,以便Dialog 宽度充满整个屏幕
    params.width =  ViewGroup.LayoutParams.MATCH_PARENT;
    params.height = ViewGroup.LayoutParams.WRAP_CONTENT;
    win.setAttributes(params);
}

关键部分是

DisplayMetrics dm = new DisplayMetrics();
getActivity().getWindowManager().getDefaultDisplay().getMetrics( dm );

作者:大菜鸡儿
来源:CSDN
原文:https://blog.csdn.net/cui_boke/article/details/79639918

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容