news 2026/4/23 22:22:56

Android里ViewModel的两种基本用法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Android里ViewModel的两种基本用法

1. 在compose里

@Composable fun CounterScreen( vm: CounterViewModel = viewModel() // 保持实例 ) { val count by vm.count.collectAsState() Button(onClick = { vm.increment() }) { Text("Count: $count") // 正常计数 } }

这需要在app的 build_gradle.kts里添加依赖:

dependencies { // other dependencies implementation(libs.androidx.lifecycle.viewmodel.compose) //... }

如果需要传参:

// 1. 使用 ViewModelFactory class CounterViewModelFactory(private val counterId: String) : ViewModelProvider.Factory { override fun <T : ViewModel> create(modelClass: Class<T>): T { return CounterViewModel(counterId) as T } } // 2. 在 Composable 中使用 @Composable fun CounterScreen(counterId: String) { val vm: CounterViewModel = viewModel( factory = CounterViewModelFactory(counterId) ) // 使用 viewModel... }

2. 在 activity里:

import androidx.activity.viewModels class MainActivity : ComponentActivity() { // 这在 Activity/Fragment 类中有效 private val vm: CounterViewModel by viewModels()

也可以写成:

val vm: CounterViewModel = ViewModelProvider(this)[CounterViewModel::class.java]
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 12:09:18

【学习笔记】《道德经》第29章

《道德经》第二十九章选段&#xff1a;中英对照与英语学习解析 此段出自《道德经》第二十九章&#xff0c;核心阐述“无为而治”与“不执著”的道家思想。英文译本采用詹姆斯理雅各&#xff08;James Legge&#xff09;的经典版本&#xff0c;语言典雅庄重&#xff0c;富有古典…

作者头像 李华
网站建设 2026/4/23 12:11:56

HeyGem系统卡通画像经过训练模型也可良好驱动

HeyGem系统卡通画像经过训练模型也可良好驱动 在虚拟内容爆炸式增长的今天&#xff0c;品牌越来越依赖“看得见的声音”来传递信息——无论是电商直播中的AI主播、教育课件里的卡通老师&#xff0c;还是游戏里会说话的NPC。传统数字人制作依赖昂贵的动作捕捉和专业动画师&#…

作者头像 李华
网站建设 2026/4/23 12:12:14

HeyGem系统当前处理视频名称实时显示避免黑屏焦虑

HeyGem系统如何通过实时状态反馈消除用户“黑屏焦虑” 在AI驱动的数字人视频生成场景中&#xff0c;一个看似不起眼的设计细节&#xff0c;往往能决定用户体验是“安心等待”还是“反复刷新”。想象一下&#xff1a;你上传了10段教学视频&#xff0c;准备批量合成由AI数字人播报…

作者头像 李华
网站建设 2026/4/23 10:46:46

计算机毕设Java面向高校的电动车租赁服务业务系统 基于Java的高校电动车共享租赁管理系统开发与实现 面向高校的Java电动车租赁服务平台设计与应用

计算机毕设Java面向高校的电动车租赁服务业务系统84qfx9 &#xff08;配套有源码 程序 mysql数据库 论文&#xff09; 本套源码可以在文本联xi,先看具体系统功能演示视频领取&#xff0c;可分享源码参考。随着高校校园规模的不断扩大和学生出行需求的日益增长&#xff0c;传统的…

作者头像 李华
网站建设 2026/4/23 12:23:56

图解说明ESP-IDF摄像头驱动工作流程

深入理解ESP-IDF摄像头驱动&#xff1a;从硬件到代码的全链路解析你有没有遇到过这样的场景&#xff1f;明明按照示例接好了OV2640摄像头&#xff0c;引脚也核对了三遍&#xff0c;可初始化就是失败&#xff1b;或者图像传回来花屏、断帧&#xff0c;调试日志里只有一句冰冷的C…

作者头像 李华
网站建设 2026/4/23 17:12:26

HeyGem系统VR全景视频暂不支持需剪辑为平面片段

HeyGem系统为何暂不支持VR全景视频&#xff1f;技术边界与实用路径解析 在智能内容生成工具快速迭代的今天&#xff0c;AI数字人系统正以前所未有的速度渗透进企业宣传、在线教育和客户服务等领域。HeyGem 作为一款专注于批量生成高质量数字人视频的本地化部署方案&#xff0c;…

作者头像 李华