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