我正在开发一个显示列表的小应用程序,当单击某个项目时,它将打开一个包含项目详细信息的辅助屏幕。我想实现MVP作为我的这个应用程序的架构,我一直在努力找出如何做到这一点,当我有单个活动与2个片段。在具有两个(或多个)碎片的单个活动上实施MVP
我的想法是每个片段有一个演示者,这意味着活动将有两个演示者实例,因为活动需要实例化它们(至少从我看过的这个链接的例子项目https://github.com/googlesamples/android-architecture)...
然后出现了一些问题,当点击列表中的某个项目时,回调被发送给第一个演示者,但此时谁负责打开第二个片段?主持人互相交谈吗?我应该通过这项活动来完成吗?有点丢失..
一直在四处寻找单个活动的例子与多个片段实施MVP,但找不到像这样的东西。
(是的,它可以以其他方式完成,但应用程序的目的是学习与多个片段在一个活动中实现MVP)
感谢任何帮助! 谢谢!
感谢您的回答,大部分的MVP介绍我已经知道了(关于接口等)..你有一个git的例子,但我看不到任何链接..也许你忘了添加它? ,关于不应该有多个演示者的活动....好吧,如果每个片段都有一个演示者,并且活动就是实例化他们的活动(在几个项目中可以看到这一点) ,该活动将不会有多个演示者? –
活动是实例化片段的人,例如,如果您有登录片段作为您的第一个片段,活动将实例化它。所有登录工作流程都将由您的片段视图,模式和演示者处理。 当成功登录第一个片段时会打开另一个片段。 与此同时,你有两个片段的公共变量,你可以把它放在活动上,这样两个片段都可以访问它。 ((MainActivity)getActivity())。commonVariable –