从对话框中删除边框,填充

新手上路,请多包涵

我有一个主题为 Theme.Transparent 的活动,它是:

 <style name="Theme.Transparent" parent="android:Theme.Dialog">
    <item name="android:windowIsTranslucent">true</item>
    <item name="android:windowNoTitle">false</item>
    <item name="android:windowIsFloating">true</item>
    <item name="android:backgroundDimEnabled">false</item>
    <item name="android:gravity">top</item>
</style>

我试图摆脱边框和它周围的填充..我想填充屏幕的水平。并且没有灰色边框。请帮忙 :)在此处输入图像描述

原文由 Guy 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 505
2 个回答

请务必创建引用您的自定义主题的对话框:

 Dialog dialog = new Dialog(this, R.style.MyDialogTheme);

您的自定义主题需要填满屏幕并禁用几个 Android 框架默认设置

 <?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="MyDialogTheme" parent="android:Theme.Dialog">
        <!-- Fill the screen -->
        <item name="android:layout_width">fill_parent</item>
        <item name="android:layout_height">fill_parent</item>

        <!-- No backgrounds, titles or window float -->
        <item name="android:windowBackground">@null</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowIsFloating">false</item>

        <!-- Just to prove it's working -->
        <item name="android:background">#ff0000</item>
    </style>

</resources>

原文由 David Snabel-Caunt 发布,翻译遵循 CC BY-SA 3.0 许可协议

与上面相同,但在代码中而不是在 xml 中对我有用。

     getDialog().getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));

原文由 user3633840 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题