带有alertdialog的android edittext

时间:2015-06-25 17:03:32

标签: android android-edittext alertdialog

我有EditText,当我点击它时,会显示一些项目的对话框列表。现在,当我点击某个项目时,我希望我选择的项目会自动输入EditText。帮我解决这个问题。提前谢谢。

警报对话框代码

public void alert(View view) {

/*
 * WebView is created programatically here.
 *
 * @Here are the list of items to be shown in the list
 */
    final CharSequence[] items = { "John", "Michael", "Vincent", "Dalisay" };

    AlertDialog.Builder builder = new AlertDialog.Builder(AddNewDish.this);
    builder.setTitle("Make your selection");
    builder.setItems(items, new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int item) {
           // String items = quantity.getText().toString();
            // will toast your selection
           // showToast("Name: " + items[item]);
            dialog.dismiss();

        }
    }).show();
}

edittext的代码

<EditText
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:inputType="textPersonName"
    android:ems="10"
    android:onClick="alert"
    android:id="@+id/dish_quantity"
    android:layout_below="@+id/dish_name"
    android:layout_alignParentRight="true"
    android:layout_alignParentEnd="true"
    android:hint="Quantity" />

enter image description here

2 个答案:

答案 0 :(得分:1)

如果您引用了要写入的EditText,只需在onClick()方法中添加要写入的代码即可。

将文字写入EditText的方法如下yourEditText.setText("Your text");。因此,在您的情况下,只需将文字设置为您选择的项目即.. yourEditText.setText(items[item]);

如果这有帮助,或者您有任何其他问题/问题,请告诉我们。

答案 1 :(得分:0)

这一个:

final EditText yourEditTextView =(EditText)findViewById(R.id. dish_quantity);
final CharSequence[] items = { "John", "Michael", "Vincent", "Dalisay" };
 builder.setItems(items, new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int item) {
            yourEditTextView.setText(items[item].toString());
            dialog.dismiss();

        }
    }).show()