我是 android studio 编程新手。我有一个应用程序,但当我想启动它时它会停止。一开始我只有一个 Button 和一个 onclicklistener,一切都工作正常。由于我有第二个带有 onlicklistener 的按钮,因此应用程序不幸停止了。我的代码有什么问题吗?感谢您的帮助。
主要 Activity :
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;
}
};
}
最佳答案
您的 Activity 应实现 OnCLickListener
,并且您的 onClick
方法必须使用 @Override
进行注释。
试试这个:
public class MainActivity extends ActionBarActivity implements View.OnClickListener {
//omitted for clarity
@Override
public void onClick(View v) {
//omitted for clarity
}
关于java - 不幸的是应用程序已停止 Android Studio,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32067935/