接口回调

本文介绍了一种在自定义控件中实现类似OnClickListener接口回调的方法。通过定义接口myClickListener,包含Click1和Click2两个方法,实现了对外部点击事件的响应。在自定义控件类中设置监听器,并通过setOnClickListener方法将点击事件与接口方法关联,从而在外部调用时触发相应的点击反馈。

类似onClickListener的接口回调

1.定义一个interface

    public interface myClickListener{
        public void Click1();
        public void Click2();
    }

2.定义listener

    private myClickListener listener;

3.定义一个暴露在外的方法

    public void setMyClickListener(myClickListener){
        this.listener = listener;
    }

4.在base类中或自定义控件类中调用

        btn1.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View view) {
                listener.Click1();
            }
        });
        bt2.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View view) {
                listener.Click2();
            }
        });

5.外部调用(这里MyView为自定义的控件,上边有两个button可以点击)

    MyView view = (MyView) findViewById(R.id.myView);
    btn.setMyClickListener(new BaseObject.myClickListener() {
            @Override
            public void Click1() {
                Toast.makeText(MainActivity.this, "left is clicked", Toast.LENGTH_SHORT).show();
            }

            @Override
            public void Click2() {
                Toast.makeText(MainActivity.this, "right is clicked", Toast.LENGTH_SHORT).show();
            }
        });

 

转载于:https://www.cnblogs.com/devli/p/5262534.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值