2017-03-13 83 views
0

我正在制作一个游戏,其中玩家在AlertDialog框中输入一个数字,我需要将此输入用作int变量。我怎么才能得到它?Android Studio将alertdialog edittext转换为int

AlertDialog.Builder builder = new AlertDialog.Builder(this); 
final EditText input = new EditText(this); //the number 
input.setInputType(InputType.TYPE_CLASS_NUMBER); 
builder.setView(input); 
builder.setTitle("Begin Game"); 
builder.setMessage("How Many rounds do you want?"); 
builder.setCancelable(true); 
builder.setPositiveButton("OK", new HandleAlertDialogListener()); 
AlertDialog dialog = builder.create(); 
dialog.show(); 
+0

[将EditText转换为int可能的重复? (Android)](http://stackoverflow.com/questions/15037465/converting-edittext-to-int-android) – ElementW

回答

0

您可以通过解析input的文本得到int回:

final int rounds = Integer.parseInt(input.getText().toString()); 

Integer.parseInt抛出一个NumberFormatException当它不能解析一个数字。

+0

它给了我一个错误,当我尝试运行应用程序时,我添加此行。 – Pecktos

+0

@Pecktos请描述错误。 – ElementW

+0

该应用程序只是崩溃,在代码中不是红色 – Pecktos