我写了下面的代码并编译了它但是当我运行应用程序时,我得到错误 android应用程序已经意外停止强制关闭eclipse 。我认为这是因为我没有初始化Button和TextView对象,但是当我初始化它们时,我会丢失令牌“;”错误。这个错误的原因是什么。
package com.umer.first.project;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class StartingPoint extends Activity {
int counter;
TextView display;
Button add, sub;
//add= new Button(this);
//sub=new Button(this);
//display=new TextView();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_starting_point);
add= (Button) findViewById(R.id.aButton);
sub = (Button) findViewById(R.id.sButton);
display= (Button) findViewById(R.id.tvButton);
add.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
// TODO Auto-generated method stub
counter++;
display.setText("The total is " + counter);
}
});
sub.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
// TODO Auto-generated method stub
counter--;
display.setText("You counter is " + counter);
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_starting_point, menu);
return true;
}
}
答案 0 :(得分:6)
Display
是TextView
,您无法将其转换为按钮。
display= (Button) findViewById(R.id.tvButton);
答案 1 :(得分:0)
2。您已声明 display
作为TextView ,但已初始化为 {{1 },这是一个强制转换。
Button
/////错误。
一定是。
display= (Button) findViewById(R.id.tvButton);
1。在onCreate()方法之前将视图的声明作为实例变量,然后在onCreate()中初始化它们。