Hi MvvmXross / Xamarin devs,
这更像是一个扩展MvvmCross的问题,而不是修复它中的错误。我只需要一些指示,这样我就能以正确的方式解决这个问题,而不是长时间在墙上敲我的头。
我一直在使用Xamarin& amp; MvvmCross现在使用活动和主要是碎片一段时间了。这完全没问题,但片段的生命周期管理(在我看来)很漂亮。
我最近在一个纯Android项目上工作,并使用Flow并伴随Dagger。这使得生命周期管理和自定义导航非常容易。
简单流程说明
流程的工作方式与一般意义上的片段(不是生命周期)非常相似。有一个主要视图'并且库在需要导航时替换该视图,并且还跟踪导航事件的历史记录。
我为Flow创建了一个绑定库(我不需要Dagger提供的依赖注入),并从一个项目开始测试它。我有设置流程来接管我的主容器视图,一切都很好。我有一个定制的AndroidViewPresenter,它会检查并最终调用Flow的导航方法,所以我的导航仍然通过视图模型在.Core项目中完成。
我现在遇到的问题是在视图中使用BindingInflates,因此我可以利用MvvmCross已经拥有的绑定代码。每个流视图都必须从布局类型(相对,线性,框架)继承。我可以从定位器创建手动视图模型并将视图模型提供给视图,但我正在努力弄清楚如何绑定值以便它响应视图模型中更改的RaiseProperty。
我觉得羞于说解决方案不一定非常复杂,我只是想知道如何实现这一点,所以我可以开始在我想到的一些应用程序上测试它。
任何帮助/指针都会受到赞赏。