温馨提示:本文最后更新于
2025-12-17 11:06:47,某些文章具有时效性,若有错误或已失效,请在下方留言。observeAsState 是 Jetpack Compose 中用于 将 LiveData 转换为 Compose 可观察状态(State) 的扩展函数。
作用
让 LiveData 的变化自动触发Compose UI 重组。
基本用法
// 无默认值
val user by viewModel.userLiveData.observeAsState()
// 有默认值
val user by viewModel.userLiveData.observeAsState(initial = null)
当 userLiveData 更新时,UI 会自动重组。
存在原因
Compose 不能直接观察 LiveData。observeAsState 负责:
- 监听
LiveData - 转换为
State<T> - 自动处理生命周期
使用场景
@Composable
fun UserScreen(viewModel: UserViewModel) {
val user by viewModel.user.observeAsState()
user?.let {
Text(it.name)
}
}
© 版权声明
THE END













暂无评论内容