首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Android 4中设置对话框宽度

在Android 4中设置对话框宽度
EN

Stack Overflow用户
提问于 2011-10-27 17:13:37
回答 2查看 2K关注 0票数 2

在使用自定义视图的应用程序中,我有许多对话框。在Android4之前,这些对话框的高度和宽度都会根据内容进行调整。在Andorid4模拟器中,这种行为已经改变。它看起来宽度将扩展以容纳内容,但它有一个最小大小,它将不会走。我可以使对话框变宽,但对于较窄的内容,对话框不会像我预期的那样缩小。因此,我的内容显示在过宽对话框的左侧。在3.0版本上,所有功能都能完美工作。我试过了:

代码语言:javascript
复制
dialog.setContentView(R.layout.help_dialog);
dialog.getWindow().setLayout(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);

这没有任何效果。此外,标题的内容不会强制对话框扩展。任何想法都非常感谢。

EN

回答 2

Stack Overflow用户

发布于 2012-03-23 01:39:18

我也有同样的问题--用它解决它:

代码语言:javascript
复制
final Dialog help = new Dialog(this);
WindowManager.LayoutParams lp = new WindowManager.LayoutParams();
lp.copyFrom(help.getWindow().getAttributes());

lp.width = (int) (width);
lp.height = (int) (height);

help.show();
help.getWindow().setAttributes(lp);
票数 2
EN

Stack Overflow用户

发布于 2012-08-01 21:47:58

我发现可以在可绘制的xml中设置对话框的边距和填充

代码语言:javascript
复制
    Dialog dialog = new Dialog(this);

    dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
    dialog.getWindow().setBackgroundDrawableResource(r.drawable.your_drawable);
    dialog.getWindow().setContentView(R.layout.your_custom_dialog_layout);
    dialog.getWindow().getAttributes().width = LayoutParams.FILL_PARENT;
    dialog.show();

看一看r.drawable.your_drawable

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<layer-list>
    <item
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:left="70dp"
        android:right="70dp">
        <shape android:shape="rectangle" >
            <solid android:color="@color/white" />
            <corners android:radius="4dp" />
            <padding
                android:bottom="70dip"
                android:left="70dip"
                android:right="70dip"
                android:top="70dip" />
        </shape>
    </item>
</layer-list>

通过设置项目android:right/left,它可以在可绘制的边距中添加边距。使用形状填充,您可以确保custom_dialog_layout中的字段不会超出对话框背景的宽度。

我希望这对你有一点帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7913869

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档