如何让我的AlertDialog填充父宽度

时间:2011-01-06 03:46:03

标签: android modal-dialog alertdialog

我正在使用带有两个按钮的编辑文本字段动态构建警报对话框。对话框只包装非常小的宽度,我希望它伸展以填充父宽度

public void showMessageDialog(String name){

    final AlertDialog.Builder alert = new AlertDialog.Builder(this);
    this.etMessage = new EditText(this);
    etMessage.setText("");
    alert.setMessage("Message " + name);
    alert.setView(etMessage);
    alert.setPositiveButton("Message", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int whichButton) {
            updateLocation();

        }
    });
    alert.setNeutralButton("Map", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int whichButton) {
            showMap();
        }
    });

    alert.show();
}

1 个答案:

答案 0 :(得分:0)

我不知道如何从代码中执行此操作,但如果您从XML中扩展视图,则可以将layout_width="fill_parent"属性添加到顶级视图,它应该填满屏幕。

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"

然后你可以像这样膨胀视图:

View dialogLayout = getLayoutInflater().inflate(R.layout.dialog_view, null);

并将其添加到AlertDialog.Builder:

builder.setView(dialogLayout);