byviewmodel()、viewmode()和ViewModelProvider有什么区别?
创始人
2025-01-12 23:00:10
0

by viewmodel()和ViewModelProvider都是用来创建ViewModel实例的方法,但它们的使用方式稍有不同。

使用by viewmodel()时,需要在Activity或Fragment中引入kotlin-android-extensions插件,然后直接在代码中调用by viewmodel()即可创建ViewModel实例。例如:

class MyFragment : Fragment() { private val viewModel by viewModels() }

使用ViewModelProvider时,需要手动创建ViewModelProvider实例,然后调用get()方法获取ViewModel实例。例如:

class MyFragment : Fragment() { private lateinit var viewModel: MyViewModel

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    viewModel = ViewModelProvider(this).get(MyViewModel::class.java)
}

}

而viewmode()则是一个错误的拼写,应该为viewModels()。

需要注意的是,by viewmodel()和ViewModelProvider在不同的情况下可能会有不同的行为,例如当Activity或Fragment重新创建时。建议根据具体场景选择合适的方法创建ViewModel。

相关内容

热门资讯

开挂辅助安装"wep... 开挂辅助安装"wepoker透视底牌脚本"开挂(透视)辅助脚本(真是有挂);无需打开直接搜索微信(1...
玩家必备教程“微乐扑克辅助器下... 您好,微乐扑克辅助器下载这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩家...
开挂辅助插件"wpk... 开挂辅助插件"wpk官网下载链接"开挂(透视)辅助平台(有挂教学);亲,wpk官网下载链接这款游戏原...
实测揭晓“wepoker到底有... 实测揭晓“wepoker到底有透视软件吗”开挂辅助平台(透视)教你教程是一款可以让一直输的玩家,快速...
开挂辅助下载"约局吧... 约局吧德州真的有透视挂吗是一款专注玩家量身打造的游戏记牌类型软件,在约局吧德州真的有透视挂吗这款游戏...
玩家必看科普“wepokerp... 您好:wepokerplus透视挂真的假的这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌...
开挂辅助工具"wep... 大家好,今天小编来为大家解答wepoker模拟器哪个这个问题咨询软件客服可以免费测试直接加微信(13...
2分钟细说“wepokerpl... 无需打开直接搜索加微信客服(136704302)咨询了解wepokerplus有没有挂辅助器目前(微...
开挂辅助平台"约局吧... 开挂辅助平台"约局吧app有挂吗"开挂(透视)辅助平台(有挂实锤)1、下载安装好约局吧app有挂吗,...
开挂辅助插件"拱趴大... 拱趴大菠萝自动计算机器人是一款专注玩家量身打造的游戏记牌类型软件,在拱趴大菠萝自动计算机器人这款游戏...