我的目标是在用户单击它时更改 a 的文本,TextView
并将其替换为用户输入的玩家名称。所以我加了一个OnClickListener
。所以点击我提示Dialog
用户输入。
private void setPlayerName(TextView textView) {
AlertDialog.Builder alert = new AlertDialog.Builder(this);
alert.setTitle("Title");
alert.setMessage("Enter Player1 Name");
// Set an EditText view to get user input
final EditText inputText = new EditText(this);
alert.setView(inputText);
alert.setPositiveButton("Ok", new inputclickListener(textView));
alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
dialog.cancel();
}
});
alert.show();
}
现在 inputclickListener 类的代码如下
class inputclickListener implements android.content.DialogInterface.OnClickListener {
TextView textView;
public inputclickListener(TextView textView){
this.textView = textView;
}
@Override
public void onClick(DialogInterface dialog, int which) {
//String value = inputText.getText().toString(); //Here I need reference to inputtext
if(value != null && value.length()>0) {
textView.setText(value);
}
}
}
正如inputclickListener
类中代码的注释中提到的,我需要对 inputText 的引用,这是一个EditText
视图。我的问题是,鉴于我们有对它的引用,我如何才能获得该引用Dialog
(我认为这应该是 Views/EditText 父级..如果我错了,请纠正我)?