Kotlin 代替Java接口回调,就这么简单

假如你使用旧的接口回调:

通常三步:1 定义接口和方法;2 使用接口中方法;3 继承接口并实现方法;

例:

Kotlin 复制代码
class XXXAdapter{
    public var mClickCollBack: clickCollBack?= null   //1定义
    interface  clickCollBack {                        //1定义
        fun click(int: Int)                           //1定义
    }
   
         itemView.setOnClickListener {
                mClickCollBack?.click(position)  //2使用
         }
}

实现:

Kotlin 复制代码
    adapter.mClickCollBack = object : XXXAdapter.clickCollBack {
            override fun click(int: Int) {
                 //做你的事
            }
    }

使用Kotlin呢?

也是三步:

1定义抽象方法 2 直接调用 3直接实现

Kotlin 复制代码
class XXXAdapter(var click:(int: Int) -> Unit){
    
   
         itemView.setOnClickListener {
                click(position)  //2使用
         }

}
Kotlin 复制代码
    adapter.click{
        // it 直接表示上级传下来的position
    }
相关推荐
大可-7 分钟前
Go Air 热重载安装配置指南
开发语言·后端·golang
2401_894915538 分钟前
Geo 优化源码部署避坑指南:解决访问异常、定位失效、收录卡顿问题
java·服务器·后端·缓存·开源
Dovis(誓平步青云)9 分钟前
《 固井工程软件 Cemsol 的数据管理与国产化适配实践》
android·java·开发语言·人工智能
大模型码小白11 分钟前
AI安全前沿:AI大模型安全防护的前沿技术
java·网络·人工智能·python·深度学习·学习·安全
Kapaseker14 分钟前
小白都看得懂的 Skill 教程 - 创建第一个 Skill
android·kotlin·vibecoding
evans在进步14 分钟前
LeetCode 34:在排序数组中查找元素的首尾位置——Java 两次二分查找详解
java·python·leetcode
@卓越俊逸_角立杰出@20 分钟前
java实现Agent+ReAct demo(Spring Boot + Spring AI Alibaba ReAct Agent)
java·spring·react.js
看浪的路人20 分钟前
第6讲:SQL 解析器
java·开发语言·数据库
zhangphil22 分钟前
Android BitmapFactory实现AOSP ContentResolver.loadThumbnail快速取小缩略图,Kotlin
android·kotlin
weixin_4407841127 分钟前
【OkHttp实现原理】
android·java·okhttp