0
我试图创建货币转换应用程序,但没有任何反应,当我点击转换按钮。这里是我跟着教程的代码。转换应用程序 - 对于Android
package com.currencyconverter;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.RadioButton;
import android.widget.TextView;
public class currencyconverter extends Activity implements OnClickListener {
/** Called when the activity is first created. */
TextView dollars;
TextView euros;
RadioButton dtoe;
RadioButton etod;
Button convert;
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
dollars = (TextView)this.findViewById(R.id.dollars);
euros = (TextView)this.findViewById(R.id.euros);
dtoe = (RadioButton)this.findViewById(R.id.dtoe);
dtoe.setChecked(true);
etod = (RadioButton)this.findViewById(R.id.etod);
convert = (Button)this.findViewById(R.id.Convert);
convert.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
}
});
}
@Override
public void onClick(View v) {
if (dtoe.isChecked()) {
convertDollarsToEuros();
}
if (etod.isChecked()) {
convertEurosToDollars();
}
}
// TODO Auto-generated method stub
protected void convertEurosToDollars(){
double val = Double.parseDouble(euros.getText().toString());
dollars.setText(Double.toString(val/0.67));
}
protected void convertDollarsToEuros(){
double val = Double.parseDouble(dollars.getText().toString());
euros.setText(Double.toString(val*0.67));
}
}
嗨克里斯蒂安。一切正常。但是对于一个小问题。例如,如果我选择美元作为欧元,请不要输入任何值,并按转换比它说的“应用程序货币转换器(进程com.currency转换器)意外停止。请再试一次。如果可以 – user 2011-04-06 04:48:36
您是否检查过美元和欧元文本框是否有空值?是否检查日志猫,因为我猜这些文本框会抛出空指针异常,而没有任何值在那个文本框中...... – Prasham 2011-04-06 05:16:01
@user:除了Prasham的建议......确保捕获任何其他可能的异常......那么'NumberFormatException'怎么办? – Cristian 2011-04-06 05:36:29