我正在制作一个Speed Converter应用程序。我的if语句存在问题。我希望我的距离/小时/分钟/秒等于0时它留空,以便它仍然会计算我的公式。但不幸的是,当我点击计算按钮时,我的应用程序不断崩溃。任何类型的建议或修订都会有所帮助。谢谢。如何使eddittext的值为0时,我将它留空
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
distance = (EditText)findViewById(R.id.distance);
hour = (EditText)findViewById(R.id.hour);
minute = (EditText)findViewById(R.id.minute);
second = (EditText)findViewById(R.id.second);
kph = (TextView)findViewById(R.id.kph);
kps = (TextView)findViewById(R.id.kps);
mm = (TextView)findViewById(R.id.mm);
}
public void computeClick(View view) {
String d = distance.getText().toString().trim();
String h = hour.getText().toString().trim();
String m = minute.getText().toString().trim();
String s = second.getText().toString().trim();
Double dis = Double.parseDouble(d);
Double hr = Double.parseDouble(h);
Double min = Double.parseDouble(m);
Double sec = Double.parseDouble(s);
if (d.equals("")) {
distance.setText("0");
}
if (h.equals("")) {
hour.setText("0");
}
if (m.equals("")) {
minute.setText("0");
}
if (s.equals("")) {
second.setText("0");
}
Double dtok = dis/1000;
Double mtoh = min/60;
Double stoh = sec/3600;
Double htoh = hr/1;
Double htos = hr * 3600;
Double mtos = min * 60;
Double stos = sec/1;
Double htom = hr * 60;
Double stom = sec/60;
Double mtom = min/1;
Double totaltimekph = mtoh + stoh + htoh;
Double totalkph = dtok/totaltimekph;
kph.setText(Double.toString(totalkph));
Double totaltimekps = htos + mtos + stos;
Double totalkps = dtok/totaltimekps;
kps.setText(Double.toString(totalkps));
Double totaltimempm = htom + stom + mtom;
Double totalmpm = dis/totaltimempm;
mm.setText(Double.toString(totalmpm));
}
请包括崩溃日志 – UmarZaii