class PlaylistViewNewModel (var playlist: Playlist?) : ViewModel() {
var limit = 100
private val name by lazy {
//lazy 只會(huì)執(zhí)行一次
playlist?.id
}
//重寫get方法 每次使用都是調(diào)用get(方法)
private val playlistId: String
get() = playlist?.id ?: ""
}
使用
初始化
mPlaylistVM = PlaylistViewNewModel(null)
設(shè)置變量
PlaylistVM?.playlist = playlist
ViewModel 初始化
fragment
private val mMyPlaylistVM by lazy {
ViewModelProvider(this)[MyPlaylistViewModel::class.java]
}
父fragment內(nèi)共用
private val mMyPlaylistVM1 by lazy {
ViewModelProvider(requireParentFragment())[MyPlaylistViewModel::class.java]
}
activity內(nèi)共用
private val mPlayVM by lazy {
ViewModelProvider(requireActivity())[PlayViewModel::class.java]
}
文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-591714.html
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-591714.html
到了這里,關(guān)于kotlin 初始化變量的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!