我是android studio编程的新手。我有一个应用程序,但当我想启动它时它会停止。起初我只有一个Button和一个onclicklistener,everthing工作正常。由于我有一个onlicklistener的第二个按钮,不幸的是app停止了。我的代码有什么问题?谢谢你的帮助。
主要活动:
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import de.example.einheitenumrechnergradfahrenheit.R;
public class MainActivity extends ActionBarActivity {
Button berechnenbutton;
Button button1;
EditText eingabegrad;
TextView ergebnisanzeige;
double ergebnis;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
eingabegrad = (EditText) findViewById(R.id.editText1);
ergebnisanzeige = (TextView) findViewById(R.id.textView3);
berechnenbutton = (Button) findViewById(R.id.button);
berechnenbutton.setOnClickListener((OnClickListener) this);
button1 = (Button) findViewById(R.id.button1);
button1.setOnClickListener((OnClickListener) this);}
public void onClick(View v) {
switch (v.getId()) {
case R.id.button:
if (eingabegrad.length() == 0) {
ergebnisanzeige.setText("Keine Eingabe erfolgt");
} else {
//Formel: Grad Celsius in Fahrenheit = ((Celsius *9)/5)+32
ergebnis = ((Double.parseDouble(eingabegrad.getText().toString()) / 1.8) - 32);
ergebnisanzeige.setText(eingabegrad.getText() + " Grad Fahrenheit sind"
+ " umgerechnet " + Double.toString(ergebnis) + " Grad Celsius");
}
break;
case R.id.button1:
if (eingabegrad.length() == 0) {
ergebnisanzeige.setText("Keine Eingabe erfolgt");
} else {
//Formel: Grad Celsius in Fahrenheit = ((Celsius *9)/5)+32
ergebnis = ((Double.parseDouble(eingabegrad.getText().toString()) * 1.8) + 32);
ergebnisanzeige.setText(eingabegrad.getText() + " Grad Celsius sind"
+ " umgerechnet " + Double.toString(ergebnis) + " Grad Fahrenheit");
}
break;
default:
break;
}
};
}
答案 0 :(得分:1)
您的活动应实施OnCLickListener
,您的onClick
方法必须使用@Override
进行注释。
试试这个:
public class MainActivity extends ActionBarActivity implements View.OnClickListener {
//omitted for clarity
@Override
public void onClick(View v) {
//omitted for clarity
}