我有一個應用程序,我想在其中調用一個打開帶有數字輸入的對話框的方法,我的問題是隻要在edittext中插入一個值並按下正向按鈕它會返回一個空值,然後在下一次調用時先返回值。帶edittext的警報對話框返回null,因爲它在賦值之前返回
通過調試,我發現它創建了元素,然後返回跳過我的賦值語句。
我該如何防止它返回太早?
private String numbers;
private String getWeight(){
final EditText edittext = new EditText(this);
edittext.setInputType(InputType.TYPE_CLASS_PHONE);
AlertDialog.Builder builder1 = new AlertDialog.Builder(this);
builder1.setMessage("How much do you weigh?");
builder1.setView(edittext);
builder1.setCancelable(true);
builder1.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
numbers = edittext.getText().toString();
dialog.cancel();
}
});
builder1.setNeutralButton(
"Cancel",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
numbers = edittext.getText().toString();
dialog.cancel();
}
});
AlertDialog alert11 = builder1.create();
alert11.show();
return numbers;
}
你不需要從你的函數返回「數字」,因爲我從你的代碼,發現了「數字」是一個全局變量。 – pooyan