利用 kotlin 的方式自定義回撥事件(kotlin函式引數)
阿新 • • 發佈:2020-03-26
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函式引數)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。