我们常用的Button的点击事件,就是谷歌为我们封装好的监听回调,我们在调用setOnClickListener时就是在设置监听。
实际项目中我们也常常需要自定义监听回调,下面就是模仿setOnClickListener,自定义的一个监听回调。

1. 定义接口

interface OnRadioPowerListener {fun onRadioPower(powerOn: Boolean)}

2.设置接口

private var onRadioPowerListener: OnRadioPowerListener? = null
// 在需要的地方设置监听
fun setOnRadioPowerListener(listener: OnRadioPowerListener) {onRadioPowerListener = listener}

3.在需要的地方设置监听

// 需要的地方设置监听if (onRadioPowerListener != null)onRadioPowerListener?.onRadioPower(true)

4.在监听回调

// 需要回调的地方继承OnRadioPowerListener,重写方法
//设置监听
setOnRadioPowerListener(this)// 重写方法
override fun onRadioPower(powerOn: Boolean) {// 实现逻辑}
//

Android自定义监听回调相关推荐

  1. Android 自定义监听回调Listener

    自定义监听回调Listener 使用场景:在某一页面布局中,除了原生View还有自定义View,当触发自定义View的击事件时,该页面的原生布局需要同步进行处理 demo:主页面有两部分UI,一部分是 ...

  2. Android监听左右滑删除通知,Android 滑动监听RecyclerView线性流+左右划删除+上下移动...

    废话不多说了,直接给大家贴代码了.具体代码如下所示: xmlns:tools="http://schemas.android.com/tools" android:layout_w ...

  3. Android 监听 Android中监听系统网络连接打开或者关闭的实现代码

    本篇文章对Android中监听系统网络连接打开或者关闭的实现用实例进行了介绍.需要的朋友参考下 很简单,所以直接看代码 复制代码 代码如下: package xxx; import android.c ...

  4. Android RecyclerView 监听滑动

    今天,简单讲讲Android 如何监听滑动. 不废话了,主要是需要做一个功能,实现RecyclerView滑动时,让一个标题栏固定显示在顶部. 基本知识: 列表的滚动一般分为两种: 手指按下 -> ...

  5. android listview ontouchlistener,Android ListView监听滑动事件的方法(详解)

    ListView的主要有两种滑动事件监听方法,OnTouchListener和OnScrollListener 1.OnTouchListener OnTouchListener方法来自View中的监 ...

  6. android 输入法 监听,android 监听 输入法

    场景:android 应用监听输入法按键事件[例如搜索和回车键等]的整个流程分析 android 应用监听输入法按键事件[比如搜索和回车键等]的整个流程分析 继承于InputMethodService ...

  7. Android——滑动监听SwipeRefreshLayout+瀑布流Recycl+Butter自动生成

    Android--滑动监听SwipeRefreshLayout+瀑布流Recycl+Butter自动生成 package c.example.jreduch09;import android.os.A ...

  8. android 如何监听应用前后台切换

    今天,简单讲讲android如何判断应用切换到后台和应用切换到前台. 这个其实很简单,之前需要做一个功能,当app由后台进入前台时需要完成一些逻辑操作,所以在网上查找如何判断app由后台进入前台,最终 ...

  9. java edittext 输入监听_Android应用开发之Android EditText 监听用户输入完成的实例

    本文将带你了解Android应用开发Android EditText 监听用户输入完成的实例,希望本文对大家学Android有所帮助. 我们都知道, Android   EditText输入框,并没有 ...

最新文章

  1. css动画Demo---水波动画和边框动画
  2. 梯度下降算法到logistic回归
  3. 多年以前提高asp.net分页查询效率的一个实例
  4. 在linux centos7上安装git
  5. 关系数据库查看器应用程序-ASP.NET Core
  6. windows安装版mysql_windows下非安装版 mysql配置
  7. java5个线程_java基础thread——java5之后的多线程(浅尝辄止)
  8. python第二课知识点总结
  9. Batch size对训练效果的影响
  10. HDU2544:最短路(Dijkstra)
  11. win10壁纸不能幻灯片放映_教你巧妙解决雨林木风Win10系统中背景桌面无法自动播放幻灯片...
  12. c语言编程汉诺塔问题,C语言解决汉诺塔问题
  13. 离散数学证明公式整理
  14. 多种参数的BCH、RS码和(2,1,6)卷积码编码的MATLAB仿真实现
  15. Unity 用于控制摄像机的旋转、远近
  16. 批量修改操作成功,但是Oracle返回的结果为-1
  17. netbackup服务linux,命令行方式管理NETBACKUP
  18. malloc申请堆内存
  19. 工业4.0:换热站最酷设计—— Web SCADA 工业组态软件界面
  20. 计算机的串口波特率,什么是波特率_波特率9600是什么意思_串口通信为什么要设置波特率?...

热门文章

  1. [BZOJ3620]似乎在梦中见过的样子(kmp)
  2. 实训第六天:搜索框布局及功能实现,实现上下滑动
  3. Excel表格中怎么快速将公式运用到一整列
  4. 手机变砖怎么办?救砖教程
  5. webform计算某几列结果_1+x 证书 Web 前端开发初级实操考试(试卷5 )
  6. 【PaperReading】Toward a gold standard for benchmarking gene set enrichment analysis
  7. source insight 4.0微软黑色主题 visual studio 2013深色风格
  8. CSS 中font样式
  9. halcon 区域 inner_circle smallest_circle
  10. ARP ICMP欺骗