android监听事件添加动做的三种方式

第一种也是最开始就接触的方式,一般在activity组件的oncreate事件中直接定义,直接动做。这种方式每一个控件都定义一次,一般不方便.
web

Button btn = (Button) findViewById(R.id.myButton);spa

 btn .setOnClickListener(new View.OnClickListener() {code

         public void onClick(View v) {接口

 //do something事件

         }ci

     });
第二种一般是在activity组件实现其接口,这样能够多外控件共享一个接口,这样相对方便
get

public class TestMedia extends Activity implements View.OnClickListener{it

Button btn1 = (Button) findViewById(R.id.myButton1);
Button btn2 = (Button) findViewById(R.id.myButton2);
class

 btn1 .setOnClickListener();
btn2 .setOnClickListener();
import

}

 public void onClick(View v) {

             switch (v.getId()) {

                case R.id. myButton1

 //do something

                break;

                case R.id. myButton2

 //do something

                break;

             }

第三种相似第二种,这样的好处在于若是须要实现多个监听接口,这样更清晰

public class TestMedia extends Activity {

Button btn1 = (Button) findViewById(R.id.myButton1);
Button btn2 = (Button) findViewById(R.id.myButton2);

 btn1 .setOnClickListener(new ClickEvent());

btn2 .setOnClickListener(new ClickEvent());

}
class 
ClickEvent implements View.OnClickListener

 public void onClick(View v) {

             switch (v.getId()) {

                case R.id. myButton1

 //do something

                break;

                case R.id. myButton2

 //do something

                break;

             }

相关文章
相关标签/搜索