Android Studio 中的 EditText 到 int
EditText to int in Android Studio
我的问题是我无法将 EditText 转换为 int。我已经尝试了我在这里阅读的所有选项,我的应用程序在打开时崩溃。提前谢谢你,我在问题所在的地方附上了我的代码的一部分。
我的问题始于 'int kg' 的第一个解析试验。我不知道该怎么做。声明在那里,但在这里看不到。提前谢谢你。
private void BMISzamitas(){
BMISzamolBtn=(Button)findViewById(R.id.BMISzamoloBtn);
kgEditText = (EditText)(findViewById(R.id.kgEditText));
cmEditText = (EditText)(findViewById(R.id.cmEditText));
eredmenyTextView=(TextView)(findViewById(R.id.bmiEredmenyTextView));
int kg = Integer.parseInt(kgEditText.getText().toString());
int cm = Integer.parseInt(cmEditText.toString());
int m = (cm*100);
double BMI = (double)(kg/Math.pow(m, m));
eredmenyTextView.setText(new Double(BMI).toString());
}
您需要验证 EditText 是否为空并在行中添加 .getText()
int cm = Integer.parseInt(cmEditText.toString());
int cm = Integer.parseInt(cmEditText.getText().toString());
首先将 inputType="number"
设置为您的 EditText
,用户强制在文本编辑器中仅输入数字以防止异常:
<EditText
android:id="@+id/kgEditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="number" // this line
/>
然后 :
if (!kgEditText.getText().toString().isEmpty() &&
!cmEditText.getText().toString().isEmpty()) {
int kg = Integer.parseInt(kgEditText.getText().toString());
int cm = Integer.parseInt(cmEditText.getText().toString());
}
我的问题是我无法将 EditText 转换为 int。我已经尝试了我在这里阅读的所有选项,我的应用程序在打开时崩溃。提前谢谢你,我在问题所在的地方附上了我的代码的一部分。 我的问题始于 'int kg' 的第一个解析试验。我不知道该怎么做。声明在那里,但在这里看不到。提前谢谢你。
private void BMISzamitas(){
BMISzamolBtn=(Button)findViewById(R.id.BMISzamoloBtn);
kgEditText = (EditText)(findViewById(R.id.kgEditText));
cmEditText = (EditText)(findViewById(R.id.cmEditText));
eredmenyTextView=(TextView)(findViewById(R.id.bmiEredmenyTextView));
int kg = Integer.parseInt(kgEditText.getText().toString());
int cm = Integer.parseInt(cmEditText.toString());
int m = (cm*100);
double BMI = (double)(kg/Math.pow(m, m));
eredmenyTextView.setText(new Double(BMI).toString());
}
您需要验证 EditText 是否为空并在行中添加 .getText()
int cm = Integer.parseInt(cmEditText.toString());
int cm = Integer.parseInt(cmEditText.getText().toString());
首先将 inputType="number"
设置为您的 EditText
,用户强制在文本编辑器中仅输入数字以防止异常:
<EditText
android:id="@+id/kgEditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="number" // this line
/>
然后 :
if (!kgEditText.getText().toString().isEmpty() &&
!cmEditText.getText().toString().isEmpty()) {
int kg = Integer.parseInt(kgEditText.getText().toString());
int cm = Integer.parseInt(cmEditText.getText().toString());
}