为了账号安全,请及时绑定邮箱和手机立即绑定

Android实现事件监听的方法

标签:
Android

1.通过内部类实现
2.通过匿名内部类实现
3.通过事件源所在类实现
4.通过外部类实现
5.布局文件中onclick属性(针对点击事件)

1.通过内部类实现代码:

 private Button mBtnEvent;
//oncreate中 
mBtnEvent.setOnClickListener(new OnClick());
 //内部类实现监听
    class OnClick implements View.OnClickListener{
        @Override
        public void onClick(View view) {
            switch (view.getId()){
                case R.id.btn_event:
                    ToastUtil.showMsg(EventActivity.this,"click...");
                    break;
            }
        }
    }

2.通过匿名内部类实现代码

 mBtnEvent.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                ToastUtil.showMsg(EventActivity.this,"click...");
            }
        });

3.通过事件源所在类实现代码

public class EventActivity extends AppCompatActivity implements View.OnClickListener 
//onCreate中
    mBtnEvent.setOnClickListener(EventActivity.this);


  @Override
    public void onClick(View view) {
        switch (view.getId()) {
            case R.id.btn_event:
                ToastUtil.showMsg(EventActivity.this, "click...");
                break;
        }

4.通过外部类实现代码:

//新建外部类
package com.example.lineralayout;
import android.app.Activity;
import android.view.View;
import com.example.lineralayout.util.ToastUtil;

public class MyClickListener implements View.OnClickListener {
    private Activity mActivity;
    //创建构造方法
    public MyClickListener(Activity activity){
        this.mActivity = activity;
    }
    @Override
    public void onClick(View view) {
        ToastUtil.showMsg(mActivity, "click...");
    }
}

//在主类中调用外部类
 mBtnEvent.setOnClickListener(new MyClickListener(EventActivity.this));

5.布局文件中onClick属性(针对点击事件)
xml代码:

  <Button
        android:id="@+id/btn_event"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="click me"
        android:textAllCaps="false"
        android:onClick="onClick"/>

activity代码:

//第一种
  public void onClick(View view) {
        ToastUtil.showMsg(EventActivity.this, "click...");
//第二种
  public void onClick(View view) {
        switch (view.getId()){
            case R.id.btn_event:
                ToastUtil.showMsg(EventActivity.this,"click...");
                break;
}
}

监听三要素
Event Source(事件源)
Event(事件)
Event Listener(事件监听器)

点击查看更多内容
2人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消