首页 > 代码库 > android-实现监听器的三种方法

android-实现监听器的三种方法

第一种:在类中,定义一个类接口,然后给出类的定义(最简单、直观)

public class Test extends Activity{    Button btn;    public void onCreate(Bundle savedInstanceState){        super.onCreate(savedInstanceState);    setContentView(R,layout.main);    ///给按钮添加监听器    MyOnClickListener listener=new MyOnClickListener();    btn.setOnClickListener(listener);   }    ///给出监听器类的定义    class MyOnClickListener implements OnClickListener{    @Override    public void onClick(View arg0){          Toast.makeTest......show();         }   }}

第二种:使用匿名内部类(自己目前最经常看到的写法,实际上就是将第一种的写在了一起)

public class Test extends Activity {Button btn;public void onCreate(Bundle savedInstanceState ){    super.onCreate(savedInstanceState );    setContentView (R. layout.main );        //匿名内部类写法    btn.setOnClickListener (new OnClickListener (){        @Override         public void onClic(View v ){            Toast .makeTest....show();         }    });}}

第三种:使用更简化,直接在类上实现监听接口

public class Test extends Activity implements OnClickListener{Button btn;public void onCreate(Bundle savedInstanceState ){    super.onCreate(savedInstanceState );    setContentView (R. layout.main );        btn.setOnClickListener (this);}    //////直接覆盖 onClick方法就可以    @Override    public void onClick (View v){        Toast .makeText( ...).show ();    }}

android-实现监听器的三种方法