package gao.com;import android.app.Activity;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;public class Activity01 extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button myButton = (Button)findViewById(R.id.myButton);
myButton.setText("Click me");
myButton.setOnClickListener(new MyButtonListener());
}
class MyButtonListener implements OnClickListener {
//@Override 错误的地方=>我加了这行代码,下面的方法就报错,明明是接口,却不能加@Override,不知为何
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = new Intent();
intent.setClass(Activity01.this, Activity02.class);
Activity01.this.startService(intent);
}
}
}
import android.app.Activity;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;public class Activity01 extends Activity implements OnClickListener{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button myButton = (Button)findViewById(R.id.myButton);
myButton.setText("Click me");
myButton.setOnClickListener(this);
}
public void onClick(View v){
System.out.println("被打印");
}
}
switch(v.getId()){
case 100:
System.out.println("被打印");
break;
}
}
实现接口中的方法是不能用@override标注的。继承才可以。你可以试试下面这段代码:public class ActivityLifeActivity extends Activity implements Runnable{
@Override //这里不能加
public void run() {
// TODO Auto-generated method stub
}
@Override //这里可以加
public void onCreate(Bundle savedInstanceState) {}
}可以查查资料,看看@override注解的具体用法
package gao.com;import android.app.Activity;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;public class Activity01 extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button myButton = (Button)findViewById(R.id.myButton);
myButton.setText("Click me");
myButton.setOnClickListener(new MyButtonListener(){
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = new Intent();
intent.setClass(Activity01.this, Activity02.class);
Activity01.this.startService(intent);
}
});
}
}
代码完全没有问题,楼主的onClick()事件里面没有log何以得知进不去,是因为跳不到Activity02而断定进不去onClick()
加上@Override试试
详细可以参照http://www.99inf.net/SoftwareDev/Java/54113.htm
有什么其他的理解,也请大家提出,分享一下