作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在ViewModel的构造函数中,我立即启动协程进行一次网络调用。要基于此网络调用的结果更新UI,我将更新发布到ViewModel中的一些LiveData变量中。这些LiveData变量依次由一个片段观察,然后进行必要的UI更新。
我想知道的是,这是否是从协程进行UI更新的有效方法。正如我前面提到的,网络请求只是初始化时完成的一件事,因此LiveData变量永远不会被更新一次以上。那么,在我的片段中设置观察者是否很浪费,因为我知道事实上它们只会被调用一次?如果是这样,哪种更好的方法呢?
谢谢!
最佳答案
Is it then wasteful to set up observers in my fragment since I know for a fact they will only be called once?
LiveData
是一个值持有者。并且,具体来说,通过在
LiveData
中包含
ViewModel
,您可以保留
LiveData
和在配置更改(屏幕旋转,暗模式切换等)中保持的值。
LiveData
LiveData
LiveData
接收值并更新UI LiveData
相同的 View 模型LiveData
LiveData
接收值并更新UI 关于android - 即使LiveData仅更新一次,也可以从协同程序发布到LiveData到更新UI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60749014/
我想插入 备注 关于要在我的 latex 文档的特定位置进行的修复 也许有一个 列表的“待办事项/修复我” 你怎么处理这个? 似乎一种方法是使用 fixme 包,但我无法使其工作。 有人在用吗? 最佳
错误:无法创建表。我已经创建了一个数据库,并且已经提供了所有特权。但仍然无法登录协作模块。我受够了,但我不想放弃。我已经尝试了所有可能的方法,但都行不通。 Stackoverflow 是我所知道的最好
我是一名优秀的程序员,十分优秀!