Android 实现监听事件的几种方法

Android 实现监听事件的几种方法,第1张

概述一、通过内部类实现publicclassEventActivityextendsAppCompatActivity{privateButtonmBtnEvent;@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.ac

一、通过内部类实现

public class EventActivity extends AppCompatActivity {    private button mBtnEvent;    @OverrIDe    protected voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentVIEw(R.layout.activity_event);        mBtnEvent=findVIEwByID(R.ID.btn_event_second);        //内部类实现        mBtnEvent.setonClickListener(new OnClick());    }        class OnClick implements VIEw.OnClickListener{        @OverrIDe        public voID onClick(VIEw v) {            switch (v.getID()){                case R.ID.btn_event_second:                    ToastUtil.showMsg(EventActivity.this,"click...");                    break;            }        }    }}

二、通过匿名内部类实现

public class EventActivity extends AppCompatActivity {    private button mBtnEvent;    @OverrIDe    protected voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentVIEw(R.layout.activity_event);        mBtnEvent=findVIEwByID(R.ID.btn_event_second);        //匿名内部类        mBtnEvent.setonClickListener(new VIEw.OnClickListener() {            @OverrIDe            public voID onClick(VIEw v) {                ToastUtil.showMsg(EventActivity.this,"click...");            }        });    }}

三、通过事件源所在类实现

public class EventActivity extends AppCompatActivity implements VIEw.OnClickListener{    private button mBtnEvent;    @OverrIDe    protected voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentVIEw(R.layout.activity_event);        mBtnEvent=findVIEwByID(R.ID.btn_event_second);        mBtnEvent.setonClickListener(EventActivity.this);    }    @OverrIDe    public voID onClick(VIEw v) {        switch (v.getID()){            case R.ID.btn_event_second:                ToastUtil.showMsg(EventActivity.this,"click...");                break;        }    }   }         

四、通过外部类实现

新建一个外部类:
public class MyClickListener implements VIEw.OnClickListener {    private Activity mActivity;    public MyClickListener(Activity activity){        this.mActivity=activity;    }    @OverrIDe    public voID onClick(VIEw v) {        ToastUtil.showMsg(mActivity, "click.....");    }}
调用外部类构造方法:
public class EventActivity extends AppCompatActivity {    private button mBtnEvent;    @OverrIDe    protected voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentVIEw(R.layout.activity_event);                mBtnEvent.setonClickListener(new MyClickListener(EventActivity.this));    }  }          

五、布局文件中 onClick 属性实现

布局文件添加 onClick :
    <button        androID:ID="@+ID/btn_event_second"        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:text="click me"        androID:textAllCaps="false"        androID:onClick="show"/>
Activity 文件添加 onClick 中调用的方法:
public class EventActivity extends AppCompatActivity {    private button mBtnEvent;    @OverrIDe    protected voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentVIEw(R.layout.activity_event);    }    public voID show(VIEw vIEw){        switch (vIEw.getID()){            case R.ID.btn_event_second:                ToastUtil.showMsg(EventActivity.this,"click from show");                break;        }    }}    
点赞收藏分享文章举报

星汉翠竹发布了75 篇原创文章 · 获赞 52 · 访问量 4万+私信 关注 总结

以上是内存溢出为你收集整理的Android 实现监听事件的几种方法全部内容,希望文章能够帮你解决Android 实现监听事件的几种方法所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1067893.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-26
下一篇2022-05-26

发表评论

登录后才能评论

评论列表(0条)

    保存