您好,登錄后才能下訂單哦!
開發環境 android studio 3.0.1 已支持 kotlin
1、定義接口
interface CallBack{ fun callBack(info : String) }
2、實現接口 : 為繼承\實現
class CallBacks : CallBack{ override fun callBack(info : String){ Log.d("MainApp","current info $info") } }
或者
private var mCallBack = object : CallBack{ override fun callBack(info : String){ Log.d("MainApp","current info $info") } }
3、定義帶回調方法的函數
private fun initData(callBack : CallBack):Boolean{ callBack?.callBack("我來自回調") return true }
4、實現回調,調用方式與實現接口對應
initData(CallBacks())
或者
initData(mCallBack)
打印結果:
補充知識:Kotlin調用接口樣例(如新建接口作為回調)
背景
kotlin里調用某個java定義的接口,方式非常簡單,但是調用kotlin定義的卻比較麻煩。
如textView.setOnClickListener { Toast.makeText(applicationContext, "test", Toast.LENGTH_SHORT).show() }
解決方案
接口定義樣例:
interface OnShakeListener { fun onShake() }
調用樣例:
sensorHelper.setOnShakeListener(object : OnShakeListener { override fun onShake() { Toast.makeText(applicationContext, "test", Toast.LENGTH_SHORT).show() } })
以上這篇kotlin 定義接口并實現回調的例子就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。