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);
}
    }
}

解决方案 »

  1.   

     怎么看你的代码都没有问题。为什么会跑步进去呢。 试试这段代码:
    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("被打印");
    }
    }
      

  2.   

     如果还不行的话,再这样试试:myButton.setId(100);public void onClick(View v){
        switch(v.getId()){
        case 100:
            System.out.println("被打印");
            break;
        }
    }
      

  3.   

    以上全都答飞所问。
    实现接口中的方法是不能用@override标注的。继承才可以。你可以试试下面这段代码:public class ActivityLifeActivity extends Activity implements Runnable{
            @Override      //这里不能加
    public void run() {
    // TODO Auto-generated method stub

    }
            @Override      //这里可以加
            public void onCreate(Bundle savedInstanceState) {}
    }可以查查资料,看看@override注解的具体用法
      

  4.   

    代码没问题啊!要不试试下面这段代码!
    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);
            }
           });
        }
    }
      

  5.   

    明显重写onClick()方法,加@Override没错    
    代码完全没有问题,楼主的onClick()事件里面没有log何以得知进不去,是因为跳不到Activity02而断定进不去onClick()
    加上@Override试试
      

  6.   

    Override在JDK5和JDK6中是有区别的,虽然我的系统用的是JDK6,但是Android SDK采用的是1.6版的,可能是导致不能在onClick前加@Override
    详细可以参照http://www.99inf.net/SoftwareDev/Java/54113.htm
    有什么其他的理解,也请大家提出,分享一下