Android如何创建一个自定义回调接口(例3)

接口回调的实现步骤

1.首先定义一个回调接口。(就是在Andorid Studio里面新建java,选择interface)
package com.example.simplelayout;
//定义一个接口
public interface CallBack {
    void solution(String str);
    //可以在主类(MainActivity)里面重写这个接口函数
}

2.定义一个接口帮助类,接口帮助类有方法里面有个参数以是这个接口类型的
package com.example.simplelayout;
//接口帮助类
public class CallBackUtil {
    //调用接口
    private static CallBack cal;
    public static  void setCallBack(CallBack cbk){
        cal=cbk;
    }
    public static  void doCallBack(){
        String info="you have done this!";
        cal.solution(info);
    }
}
3、具体调用类,及通过接口传递数据,主Activity。
package com.example.simplelayout;
 
import androidx.appcompat.app.AppCompatActivity;
 
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.os.Handler;
 
public class MainActivity extends AppCompatActivity implements CallBack {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        CallBackUtil.setCallBack(this);
        new Handler().postDelayed(new Runnable() {
            @Override
            public void run() {
                CallBackUtil.doCallBack();
            }
        }, 1000);
    }
    @Override
    public void solution(String string) {
        Log.e("Enoment", "receive method from CallBackUtil" + string);
    }
}

相关推荐

  1. Android如何创建定义接口3

    2024-07-09 20:32:08       26 阅读
  2. C#面:如何创建定义异常?

    2024-07-09 20:32:08       35 阅读
  3. IntelliJ IDEA中创建定义项目向导

    2024-07-09 20:32:08       43 阅读
  4. Odoo创建定义UI视图

    2024-07-09 20:32:08       28 阅读
  5. vue定义view,传值和事件

    2024-07-09 20:32:08       49 阅读
  6. android 11 定义Android device owner 接口

    2024-07-09 20:32:08       48 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-09 20:32:08       99 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-09 20:32:08       107 阅读
  3. 在Django里面运行非项目文件

    2024-07-09 20:32:08       90 阅读
  4. Python语言-面向对象

    2024-07-09 20:32:08       98 阅读

热门阅读

  1. mac上挂载linux目录

    2024-07-09 20:32:08       31 阅读
  2. 构建自己的docker基础镜像

    2024-07-09 20:32:08       23 阅读
  3. 每天10个vue面试题(一)

    2024-07-09 20:32:08       27 阅读
  4. Vue3框架搭建:vue+vite+pina+typescript

    2024-07-09 20:32:08       26 阅读
  5. R 绘图 - 饼图

    2024-07-09 20:32:08       55 阅读
  6. Spring Boot与Jenkins的集成

    2024-07-09 20:32:08       29 阅读
  7. AWS CloudWatch 权限管理指南

    2024-07-09 20:32:08       28 阅读
  8. PLSQL Day5

    2024-07-09 20:32:08       29 阅读