Android 带有编辑文本的警报对话框生成器

Android 带有编辑文本的警报对话框生成器,android,android-alertdialog,Android,Android Alertdialog,我正在使用警报对话框编辑textview小部件。当对话框弹出时,是否可以用用户文本填充edittext?我看到有些地方有自定义的瓷砖、图标和按钮,但没有输入消息。alterdialog由一个onlcicklistener触发,它从textview获取文本 @Override public void onClick(View item) { switch (item.getId()) { case R.id.textView1: strEditTe

我正在使用警报对话框编辑textview小部件。当对话框弹出时,是否可以用用户文本填充edittext?我看到有些地方有自定义的瓷砖、图标和按钮,但没有输入消息。alterdialog由一个onlcicklistener触发,它从textview获取文本

        @Override
public void onClick(View item) {

    switch (item.getId()) {
    case R.id.textView1:
        strEditText = Title1.getText().toString();
        Log.d("TAG", strEditText);
        strReturn = SetDialogBox(strEditText);
        Title1.setText(strReturn);

        break;
交替法

        private String SetDialogBox(String strEditText) {

    AlertDialog.Builder alert = new AlertDialog.Builder(this);

    alert.setTitle("Title");
    // alert.setMessage("Message");

    // Set an EditText view to get user input
    final EditText input = new EditText(this);

    alert.setView(input);
    alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int whichButton) {
            Editable value = input.getText();

        //  Log.d("TAG", Editable);

        }
    });

    alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int whichButton) {
            // Canceled.
        }
    });

    alert.show();
    return strReturn;

}
已解析文本编辑在最终编辑文本输入后添加的行=新编辑文本(此)


这也适用于editText

方法

private void showChooseSuitDialog() {
        final Dialog chooseSuitDialog = new Dialog(myContext);
        chooseSuitDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
        chooseSuitDialog.setContentView(R.layout.choose_suit_dialog);
        final Spinner suitSpinner = (Spinner) chooseSuitDialog.findViewById(R.id.suitSpinner);
        ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
                myContext, R.array.suits, android.R.layout.simple_spinner_item);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        suitSpinner.setAdapter(adapter);
        Button okButton = (Button) chooseSuitDialog.findViewById(R.id.okButton);
        okButton.setOnClickListener(new View.OnClickListener(){
            public void onClick(View view){
                validSuit = (suitSpinner.getSelectedItemPosition()+1)*100;
                String suitText = "";
                if (validSuit == 100) {
                    suitText = "Diamonds";
                } else if (validSuit == 200) {
                    suitText = "Clubs";
                } else if (validSuit == 300) {
                    suitText = "Hearts";
                } else if (validSuit == 400) {
                    suitText = "Spades";
                }
                chooseSuitDialog.dismiss();
                Toast.makeText(myContext, "You chose " + suitText, Toast.LENGTH_SHORT).show();
                myTurn = false;
                makeComputerPlay();

            }
        }); 
        chooseSuitDialog.show();
    }
private void showChooseSuitDialog(){
最终对话框选择SuiteDialog=新建对话框(myContext);
选择SuiteDialog.requestWindowFeature(Window.FEATURE\u NO\u TITLE);
选择SuiteDialog.setContentView(R.layout.choose\u suit\u dialog);
最终微调器SuiteSpinner=(微调器)选择SuiteDialog.findViewById(R.id.SuiteSpinner);
ArrayAdapter=ArrayAdapter.createFromResource(
myContext、R.array.suits、android.R.layout.simple\u微调器\u项);
setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
SuiteSpinner.setAdapter(适配器);
按钮OK按钮=(按钮)选择SuiteDialog.findViewById(R.id.OK按钮);
okButton.setOnClickListener(新视图.OnClickListener(){
公共void onClick(视图){
ValidSuite=(suitSpinner.getSelectedItemPosition()+1)*100;
字符串suitext=“”;
如果(有效回路==100){
suitext=“钻石”;
}否则如果(有效回路==200){
suitext=“俱乐部”;
}否则如果(有效回路==300){
suitext=“Hearts”;
}否则如果(有效回路==400){
suitext=“黑桃”;
}
选择SuiteDialog.Disclose();
Toast.makeText(myContext,“您选择了”+suitext,Toast.LENGTH_SHORT.show();
myTurn=false;
使计算机播放();
}
}); 
选择SuiteDialog.show();
}
选择_suit_dialog.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:id="@+id/chooseSuitLayout"
android:layout_width="275dp"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_gravity="top"
xmlns:android="http://schemas.android.com/apk/res/android"
>
<TextView
android:id="@+id/chooseSuitText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Choose a suit."
android:textSize="16sp"
android:layout_marginLeft="5dp"
android:textColor="#FFFFFF"
>
</TextView>
<Spinner 
android:id="@+id/suitSpinner"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:drawSelectorOnTop="true"
/>
<Button
android:id="@+id/okButton"
android:layout_width="125dp"
android:layout_height="wrap_content"
android:text="OK"
>
</Button>
</LinearLayout>

我想用所选内容填充对话框编辑文本窗口。感谢您提供的示例代码,但toast选项无法满足我的需要。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:id="@+id/chooseSuitLayout"
android:layout_width="275dp"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_gravity="top"
xmlns:android="http://schemas.android.com/apk/res/android"
>
<TextView
android:id="@+id/chooseSuitText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Choose a suit."
android:textSize="16sp"
android:layout_marginLeft="5dp"
android:textColor="#FFFFFF"
>
</TextView>
<Spinner 
android:id="@+id/suitSpinner"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:drawSelectorOnTop="true"
/>
<Button
android:id="@+id/okButton"
android:layout_width="125dp"
android:layout_height="wrap_content"
android:text="OK"
>
</Button>
</LinearLayout>