簡(jiǎn)述
在android 開發(fā)過程中,SharedPreferences應(yīng)用很廣泛,也很頻繁,現(xiàn)在給大家來介紹下,用kotlin語言封裝SharedPreferences的魅力
用法
private var userId by Preference("UserId","csdn41526")
userId =" test123 " //自動(dòng)調(diào)用SharedPreferences的putString("UserId"," test123 ")
var otherUserId= userId // 自動(dòng)調(diào)用 getString("UserId","csdn41526")
就這么簡(jiǎn)單,這里用到了kotlin語法的委托屬性,不明白了的可以去我之前的博客去看 地址
封裝
現(xiàn)在看下如何封裝的,直接看封裝類

說下這個(gè)類的實(shí)現(xiàn)思路
1. 首先定義一個(gè)帶泛型T的類
2. 構(gòu)造函數(shù) 有name 作為key,default作為默認(rèn)值
3. operator 修飾的函數(shù) 就是 屬性委托的時(shí)候 主動(dòng)調(diào)用的
4. 定義putSharedPreference函數(shù),根據(jù)T泛型的類型來判斷調(diào)用 SharedPreference的具體函數(shù)
5. with 函數(shù)接受 一個(gè)對(duì)象,在該函數(shù)內(nèi)可以直接調(diào)用 接受對(duì)象的函數(shù)
6. 懶加載 lazy 來緩存 SharedPreference對(duì)象
總結(jié)
源碼共享:地址
本次介紹了SharedPreference的封裝運(yùn)用,下次介紹RecyclerView.Adapter的封裝,敬請(qǐng)期待