onClick事件

button和imageButton都拥有一个onClick事件。
     通过自身的setOnClickListener(OnClickListtener);方法添加点击事件。
 
所有控件都拥有一个onClick事件,通过点击事件的监听可以实现点击按钮之后要进行的动作。
 
监听事件实现的几种类型。
     1.匿名内部类的实现。
        (1): 初始化当前所需要的控件。
               声明   ?  
               private Button loginButton;
          获取button
               loginButton =(Button) findViewById(R.id.button1);          //findViewById(R.id.button1);  返回的是一个View对象。
                 设置button监听器   通过监听器实现点击button要实现的事情(监听事件,触发匿名内部类)
               loginButton.setOnClickListener(new OnClickListener() {
                      @Override
                      public void onClick(View v) {
                            //在当前onclick方法中监听点击button的动作
                     }
              });
2.独立类的实现。
     bt1=(Button) findViewById(R.id.button1);
     bt2=(ImageButton) findViewById(R.id. imageButton1);
     bt1.setOnClickListener( new MyOnClickListener(){
          @Override
          public void onClick(View v) {
           // 调用父类的OnClick事件
               super.onClick(v);
               Toast. makeText(MainActivity.this, "bt1", 1).show();
           }
      });
              
      bt2.setOnClickListener( new OnClickListener() {
          @SuppressLint("NewApi" )
          @Override
          public void onClick(View v) {
              findViewById(R.id. button1).setAlpha(0.9f);
          }
       });     
 
//外部类     继承该类时,会触发该类的onClick方法。
class MyOnClickListener implements OnClickListener {
        @Override
        public void onClick(View v) {
               // TODO Auto-generated method stub
              v.setAlpha(0.1f);
       }
       
}
3.实现接口的方式来实现。
//实现OnClickListener接口的onClick方法。
public class MainActivity extends ActionBarActivity implements OnClickListener {
        bt2.setOnClickListener( this);
        @Override
        public void onClick(View v) {
              Toast. makeText(MainActivity.this, "接口", 1).show();   
       }
}
stareblankly.cn
原文地址:https://www.cnblogs.com/stareblankly/p/4829233.html