Как я могу получить свой AlertDialog для заполнения родительской ширины - PullRequest
0 голосов
/ 06 января 2011

Я строю диалоговое окно оповещения динамически с полем редактирования текста с двумя кнопками. Диалоговое окно только оборачивает ширину, которая очень мала, я хочу растянуть, чтобы заполнить родительскую ширину

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 голосов
/ 06 января 2011

Я не знаю, как это сделать из кода, но если вы раздуете представление из 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);
...