[英]What is the difference between ViewModel that extends BaseObservable and Android ViewModel Class?
[英]android - What is the 1:n relationship between view and viewModel
我知道视图和视图模型是 1:n。 但是,在大多数示例中,每个活动都有一个视图模型。 例如)mainActivity - mainViewModel、userListActivity - userListViewModel
如果是 1:n 关系,不应该像下面这样吗? 例如)mainActivity - viewModel、userListActivity - viewModel
1:n 是什么意思? 这是否意味着一个视图模型中有 n 个活动? 这是否意味着一个视图模型中有 n 个 xml 文件?
是的,常见的用例是1:1 。 但理论上你可以有多个ViewModel服务于一个视图,所以这就是1:n关系的原因。
实际上,如果您想在两个视图之间共享ViewModel ,或者当您拥有共享的Flow ViewModel时,这可能会很有用
因此,基本上在该流程中,每个View都可以与两个ViewModel通信:共享一个和一个特定于该视图:
SignUp
流程,有两个屏幕用户凭据(电子邮件、密码等),另一个屏幕有一些偏好(如会员资格、通知、地址或其他应用程序特定设置)SharedFlowViewModel
可以保存所有用户信息,并且在最后一个屏幕上, Submit将发送请求。 具有单个ViewModel
的所有其他屏幕将只处理单个屏幕逻辑:表单验证、输入启用/禁用等...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.