我正在实现我的第一个完整MVVM活动。
我正要制定一些可见性规则。选择微调器中的特定项目后,我想使其他视图可见。当微调框未选择该视图时,我想“去掉”那些视图的可见性。
由于存在与此关联的逻辑,因此我首先假设我希望视图模型在通过逻辑后更新一个livedata布尔值。我会观察片段中的livedata并调用一个方法以使视图可见。
但是我考虑了一下,现在我认为我应该只执行片段中的逻辑,因为它全都是UI逻辑。否则,视图模型将控制片段的可见性,这似乎是错误的。控制数据是一回事,而数据又控制可见性,而不直接控制可见性。但是,我不确定这是“做逻辑”的部分。
有人可以建议如何以及在何处执行可见性逻辑的正确模式吗?