Android中接口回调

大家好,我是kervin2,关于我写的博客有不明白之处欢迎qq讨论:1991861807
今天是2017年1月2号祝愿所有看过此篇博客的同学新年快乐。
言归正传 我接触Android有半年左右,在Android不免有些传值问题 其中大部分都是用接口回调来实现的,对于接口回调我也是懵懵懂懂 只是知道谁声明谁传递 谁实现谁接受,然而最近接触了很多新知识(RecyclerView的自定义点击,Mvp模式,EventBus等等)使我不得不弄明白接口回调。
直接上代码加讲解:
第一步:先声明接口 方法的参数类型是你想要传递数据的类型

public interface CallBackText {
    void setString(String data);
}

第二步:创建一个类 让该类与你想要传值的类建立关系,在该类中我在构造方法中调用方法传的值

public class Kervin {
    private CallBackText callBackText;

    public Kervin(CallBackText callBackText) {
        this.callBackText = callBackText;
        //设置要传的数据
        callBackText.setString("Kervin");
    }

}

最后一步:实现该接口并且声明第二步所创建类的对象,对象的参数即为该接口

public class MainActivity extends AppCompatActivity implements CallBackText {
    private TextView tv;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        tv = (TextView) findViewById(R.id.tv);
        init();
    }

    private void init() {
        Kervin kervin = new Kervin(this);
    }

    @Override
    public void setString(String data) {
        tv.setText(data);
    }
}

效果演示

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android开发接口回调是一种常用的设计模式。它用于实现不同组件之间的通信和交互。接口回调的基本原理是,一个类(称为回调接口)定义了一些方法,其他类可以实现这些方法并注册到回调接口。当某个事件触发时,回调接口会调用注册的类的对应方法来处理事件。 在Android开发接口回调广泛应用于各种场景,比如点击事件的处理、网络请求的回调、异步任务的通知等。通过接口回调,我们可以将代码的逻辑分离,使得各个组件之间的耦合度降低,提高了代码的可维护性和扩展性。 举个例子来说,假设我们有一个按钮,当用户点击按钮时,我们希望执行一些特定的操作。这时,我们可以定义一个回调接口,比如OnClickListener,其包含一个方法onClick。然后,我们可以在Activity实现OnClickListener接口,并将其注册到按钮上。当用户点击按钮时,按钮会调用注册的OnClickListener的onClick方法,从而执行我们指定的操作。 因此,接口回调Android开发非常重要的一部分,熟练掌握接口回调的使用可以提高代码的质量和开发效率。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [安卓开发之简单的接口回调](https://blog.csdn.net/weixin_43885787/article/details/86604452)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [详解Android接口回调、方法回调](https://blog.csdn.net/qq_31881469/article/details/80089675)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值