当editText 为空时点击按钮我有一个FC,这是我的代码:
final Button button = (Button) findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
float q1=Float.parseFloat(vol.getText().toString());
float q2=Float.parseFloat(kil.getText().toString());
String value1 = vol.getText().toString();
String value2 = kil.getText().toString();
if (value1 != null && value1.trim().length() > 0 && value2 != null && value2.trim().length() > 0)
{
float x=((q1 / q2)* 100);
cons.setText(Float.toString(x));
}
else
{
Toast.makeText(carburant.this, "Veuillez saisir le 1er champs", Toast.LENGTH_SHORT).show();
}
}
});
答案 0 :(得分:1)
原因可能是因为您尝试解析浮点值为空值。尝试在if条件
中获取q1和q2的值答案 1 :(得分:1)
实际上,他们会抛出异常。将它们放入try catch块中。把它放在试试中并在catch中处理它。它更好,因为你可以在捕获中干杯。
编辑: 这是一些代码。
try {
flt1 = Float.parseFloat(str1);
flt2 = Float.parseFloat(str2);
result = flt1 + flt2;
} catch (NumberFormatException e) {
// Do something to let user know it didnt work.
}
答案 2 :(得分:0)
问题解决了,转换为浮动放置不好,这是工作代码:
String value1 = vol.getText().toString();
String value2 = kil.getText().toString();
if (value1 != null && value1.trim().length() > 0 && value2 != null && value2.trim().length() > 0)
{
float q1=Float.parseFloat(vol.getText().toString());
float q2=Float.parseFloat(kil.getText().toString());
float x=((q1 / q2)* 100);
cons.setText(Float.toString(x));
}
else
{
Toast.makeText(carburant.this, "Veuillez vérifier les deux champs", Toast.LENGTH_LONG).show();
}
感谢您的帮助:)。