DialogFragment引力不会在角落中完全显示对话框

时间:2017-03-18 16:39:18

标签: android android-layout

我希望对话框完全出现在角落里。我这样设置引力:

    Window win = dialog.getWindow();
    WindowManager.LayoutParams wmlp = win.getAttributes();
    wmlp.gravity = Gravity.TOP | Gravity.RIGHT;
    wmlp.horizontalMargin = 0;
    wmlp.verticalMargin = 0;

边距不会对此产生任何影响。布局检查器也不能在对话框上工作,所以我无法真正检查设置边距/填充的内容。

enter image description here

我是否可以完全在角落显示此对话框片段(无需在整个屏幕上重新创建自定义覆盖片段作为对话框)?

1 个答案:

答案 0 :(得分:0)

额外的填充/边距可能与背景可绘制有关。通过执行以下操作,更改对话框的样式以将android:windowBackgroundandroid:background设置为透明:

    <style name="TransparentDialog" parent="@style/Theme.AppCompat.Light.Dialog">
        <item name="android:windowBackground">@android:color/transparent</item>
        <item name="android:background">@android:color/transparent</item>
    </style>

(我相信android:windowBackground在这里很重要,您可能不需要设置android:background。)

感谢安德鲁回答this question帮助提供解决方案。