我需要在alertDialog 中放入一个editText。据我所知,据我所知,我需要创建一个自定义对话框。这真的是将editText放入alertDialog的唯一方法吗?我不想采取超出完成简单任务所需的步骤。最后应该是这样的:
------------------------
-Please enter your name-
- [ ]-
- (Save) -
------------------------
我需要在alertDialog 中放入一个editText。据我所知,据我所知,我需要创建一个自定义对话框。这真的是将editText放入alertDialog的唯一方法吗?我不想采取超出完成简单任务所需的步骤。最后应该是这样的:
------------------------
-Please enter your name-
- [ ]-
- (Save) -
------------------------
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);
这样您就不必创建新的自定义对话。
是的,这是目前执行此操作的正确(并且可能是唯一)方法。
像这样的东西:
final EditText input = new EditText(this);
AlertDialog.Builder alert = new AlertDialog.Builder(this)
.setTitle("Please enter your name")
.setView(input) // Use our EditText
.setPositiveButton("Save", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
// Save value of `input.getText()`
}
}).show();
这是我不时使用的此博客中代码的自定义版本。
你不仅可以放EditText,还可以放任何你想要的东西。只需为您想要放置的内容创建一个 XML 布局,然后按照链接中所示使用它:-
请参阅我给出的答案(Aamir Shah)
希望解释是有用的......