我无法在Androis Studio中获取EditText的int值
我使用Int FirstValue = Integer.parseInt(FirstInput.getText().toString());
但当我使用它我的应用程序将停止在Evulator!
此问题适用于我的所有Android Studio应用
答案 0 :(得分:2)
首先,确保您的EditText在布局文件中有id
。
<EditText
android:id="@+id/FirstInput"
android:width="220px" />
接下来,在您的活动中,请确保您拥有以下代码,它不必在您的onCreate()
方法中,因为EditText将具有空值。但适用相同的基本原则;
EditText FirstInput;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.your_layout);
FirstInput = (EditText)findViewById(R.id.FirstInput);
try{
int firstValue = Integer.parseInt(FirstInput.getText().toString());
}catch(Exception e){
// Do something to handle the error;
}
}
答案 1 :(得分:0)
这是
if(!FirstInput.getText().toString().equals(""){
int firstValue = Integer.parseInt(FirstInput.getText().toString());
} else {
//Display a toast for handling null value in EditText or something.
}
答案 2 :(得分:0)
它仍然是崩溃的意思,你没有使用EditText的有效ID,或者你试图转换不是数字的整数(作为字符串)。
尝试使用上面的代码块尝试catch块并查看。 仍然如果您无法看到数字格式异常,它肯定与EditText的id或edittext可能不会出现在您正在使用的布局中(例如:edittext存在于layout-large但不存在布局目录布局文件中)