Button btn1 = (Button)findViewById(R.id.button1);
        btn1.setOnClickListener(new Button.OnClickListener(){
         public void onClick(View v){
         Intent intent = new Intent();
         intent.setClass(Activity1.this,Activity2.class);
         startActivity(intent);
         Activity1.this.finish();
         }
为什么要这么写而不直接
 Button button = (Button)findViewById(R.id.btn);     button.setOnClickListener(this);     }          public void onClick(View v) {     Toast.makeText(     this,     "Yes.",     Toast.LENGTH_LONG).show();      }
像这样写呢?
还是说用intent时要这么写?求教 小白不懂

解决方案 »

  1.   

    不定义一个新的类及对象,使用匿名类传参,如果使用this的话应该引入button.onclicklistener接口,具体可看我的博客
      

  2.   

    假如有多个 button 呢?函数定义在 this 类中就不合适了
      

  3.   

    你可以把匿名内部类直接写成一个明显的内部类实现OnClickListener接口。
      

  4.   

    这是匿名类,也只能在这里用一次,楼主可以去参考下java的语法