这篇文章主要介绍了利用 kotlin 的方式自定义回调事件(kotlin函数参数),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
java 中自定义回调事件的写法
创建 interface类,创建 interface 对象,实现 set 方法:
使用:
kotlin 中自定义点击事件写法
依照 java 的思想(不推荐)
创建 interface类,创建 interface 可变对象(var)
使用:
利用 kotlin 函数作为参数(强烈推荐)
来看一下系统的点击事件在 kotlin 中是什么样的:
是不是简直简洁到不像话?再看看你自己定义的点击事件回调,感觉跟还在用 java 开发一样…
下面就来看个新的写法:
创建一个函数对象,在需要回调的地方调起这个函数:
用法:
是不是比用对象表达式看起来还要简洁?
2018.12.12 更新:
上边截图里的 kotlin 点击事件回调,还有更简洁的定义方法:
之前的写法是声明不可为 null 的函数变量,然后判断是否初始化再去 invoke 函数。
现在声明可为 null 的函数变量,在 invoke 函数的时候用 ?. 表示函数变量可空,如果没有给这个点击事件函数赋值的话,这行代码也不会引起 crash。现在连判断条件都不需要了,更精简了。
这里再说点个人经验,如果你的回调方法不止一个的话,推荐还是声明 interface 来做,这样的话都在一个 interface 里边好管理一些
以上这篇利用 kotlin 的方式自定义回调事件(kotlin函数参数)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程学习网。
本文标题为:利用 kotlin 的方式自定义回调事件(kotlin函数参数)
基础教程推荐
- iOS Crash常规跟踪方法及Bugly集成运用详细介绍 2023-01-18
- iOS中如何判断当前网络环境是2G/3G/4G/5G/WiFi 2023-06-18
- Android开发Compose集成高德地图实例 2023-06-15
- iOS开发 全机型适配解决方法 2023-01-14
- IOS获取系统相册中照片的示例代码 2023-01-03
- Android实现短信验证码输入框 2023-04-29
- MVVMLight项目Model View结构及全局视图模型注入器 2023-05-07
- Flutter进阶之实现动画效果(三) 2022-10-28
- iOS开发使用XML解析网络数据 2022-11-12
- Android Compose自定义TextField实现自定义的输入框 2023-05-13