如何访问DialogBox中的EditText字段?

时间:2010-11-03 13:59:32

标签: android

如何访问DialogBox中的EditText字段?

1 个答案:

答案 0 :(得分:14)

将EditText小部件放入对话框中:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical">

    <EditText
        android:id="@+id/myEditText"
        android:layout_height="wrap_content"
        android:layout_width="fill_parent" />
</LinearLayout>

然后从对话框中膨胀视图并获取EditText的内容。

private Dialog myTextDialog() {
    final View layout = View.inflate(this, R.layout.myDialog, null);

    final EditText savedText = ((EditText) layout.findViewById(R.id.myEditText));

    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setIcon(0);

    builder.setPositiveButton("Save", new Dialog.OnClickListener() {
        public void onClick(DialogInterface dialog, int which) {
           String myTextString = savedText.getText().toString().trim();
        }
    });
    builder.setView(layout);
    return builder.create();
 }

按下“保存”按钮后,myTextString将保留EditText的内容。您当然需要首先显示此示例的对话框。