Android 如果表单为空,应用将关闭 - 需要验证表单
Android app shutting if form blank - Need a validation form
我有一个应用程序可以将 km/h 转换为 mph。
如果表单为空白并按下按钮转换,则应用程序将关闭。
我知道我需要一个函数,如果表单为空,我需要一个验证函数,并显示一条消息,通知用户表单不能为空,但我找不到解决我的问题的代码。
我的 onClick 代码是:
buttonConverter.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
double Value1 = Double.valueOf(txtKmhUser.getText().toString());
double Value2 = Value1 / 1.60;
Result.setText(String.valueOf(Value2));
}
});
只需在转换前进行验证
buttonConverter.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
String str=txtQuilometros.getText().toString();
if(str.length()>0)
{
double Value1 = Double.valueOf(str);
double Value2 = Value1 / 1.60;
Result.setText(String.valueOf(Value2));
}
}
});
在转换之前检查您的编辑文本是否为空值
if(!value1.equals(null))
如果 EditText
为空,您可以敬酒。
@Override
public void onClick(View arg0) {
String yourString = txtKmhUser.getText().toString();
if(!yourString.equals("")){
double Value1 = Double.valueOf(yourString);
double Value2 = Value1 / 1.60;
Result.setText(String.valueOf(Value2));
}else{
Toast.makeText(this, "Form can not be blank", Toast.LENGTH_SHORT).show();
}
}
您的应用崩溃的原因是 Double.valueOf("") 抛出数字格式异常。因此,您需要在处理之前验证您的表单或使用 try/catch 作为例外。
buttonConverter.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
if(txtQuilometros.getText().toString().length() > 0) {
double Value1 = Double.valueOf(txtQuilometros.getText().toString());
double Value2 = Value1 / 1.60;
Result.setText(String.valueOf(Value2));
} else {
txtQuilometros.setError("Please enter a value");
}
});
我有一个应用程序可以将 km/h 转换为 mph。 如果表单为空白并按下按钮转换,则应用程序将关闭。 我知道我需要一个函数,如果表单为空,我需要一个验证函数,并显示一条消息,通知用户表单不能为空,但我找不到解决我的问题的代码。
我的 onClick 代码是:
buttonConverter.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
double Value1 = Double.valueOf(txtKmhUser.getText().toString());
double Value2 = Value1 / 1.60;
Result.setText(String.valueOf(Value2));
}
});
只需在转换前进行验证
buttonConverter.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
String str=txtQuilometros.getText().toString();
if(str.length()>0)
{
double Value1 = Double.valueOf(str);
double Value2 = Value1 / 1.60;
Result.setText(String.valueOf(Value2));
}
}
});
在转换之前检查您的编辑文本是否为空值
if(!value1.equals(null))
如果 EditText
为空,您可以敬酒。
@Override
public void onClick(View arg0) {
String yourString = txtKmhUser.getText().toString();
if(!yourString.equals("")){
double Value1 = Double.valueOf(yourString);
double Value2 = Value1 / 1.60;
Result.setText(String.valueOf(Value2));
}else{
Toast.makeText(this, "Form can not be blank", Toast.LENGTH_SHORT).show();
}
}
您的应用崩溃的原因是 Double.valueOf("") 抛出数字格式异常。因此,您需要在处理之前验证您的表单或使用 try/catch 作为例外。
buttonConverter.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
if(txtQuilometros.getText().toString().length() > 0) {
double Value1 = Double.valueOf(txtQuilometros.getText().toString());
double Value2 = Value1 / 1.60;
Result.setText(String.valueOf(Value2));
} else {
txtQuilometros.setError("Please enter a value");
}
});