我正在开发一个 iOS MVVM + Coordinator/RxSwift 项目(非 swiftUI)。
在 groundViewController 中,屏幕上有多个项目,用户可以点击任何项目来调用该项目的详细 View 。点击一个项目后,详细 View 将滑入,当用户点击另一个项目时,详细 View 将滑出,然后再次滑入更新信息。 detailView 是半屏大小,用户也可以点击 groundViewController 上的空白区域来关闭详细 View (滑出动画)。(所以只有一个 detailView)
我决定将详细 View 制作为 UIView,它将拥有自己的协调器和 ViewModel,并添加到 groundViewControll.view。但是我现在对如何在它们之间进行通信或事件流感到困惑。
问题:在 MVVM/Coordinator 模式中,将此流程设置为是否正确:
groundViewController (receive a tap on the object) - >
groundViewModel - >
groundCoordinator (creat and pass itemID ) - >
detailedViewCoordinator (creat) - >
detailedViewModel and detialedView
谁应该负责 detialedView 的滑入/滑出动画?
最佳答案
本地面 View 收到点击时,它会告诉地面 View 模型。
看法。它将详细 View 模型传递给详细 View 。
在创建和销毁项目的确切时间存在一些变化,但以上是总体思路。
关于ios - 在 MVVM + Coordinator 中,如何处理 subview ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65264087/