繁体   English   中英

observeAsState 和 collectAsState 之间的区别以及何时在 Android Jetpack Compose 中使用它们?

[英]Difference between observeAsState and collectAsState and when to use each in Android Jetpack Compose?

我正在学习 Jetpack Compose,但在理解状态方面遇到了一些问题。 有人可以解释这两个吗? observeAsState 和 collectAsState。 谢谢你。

  1. observeAsStateLiveData的扩展。
    开始观察这个LiveData并通过State表示它的值。
    在内部使用Lifecyle来安全地观察数据。

  2. collectAsStateStateFlow的扩展。
    从此StateFlow收集值并通过 State 表示其最新值。
    您需要根据适当的Lifecyle处理集合。

来源: Compose#LiveDataCompose#Flow

Darshan 的另一个答案是,在版本 2.6.0-alpha.1 中,我们有一个新的扩展 function,它在收集 StateFlow 时处理生命周期。

发行说明链接: https://developer.android.com/jetpack/androidx/releases/lifecycle?hl=es-419#2.6.0-alpha01

使用示例。 https://medium.com/tech-takeaways/how-to-safely-collect-flows-lifecycle-aware-in-jetpack-compose-a-new-approach-ed20ead25be9

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM