规划为MVC类型的android应用实现MVP体系结构.我担心如何才能使主持人拥有多个
楷模.
通常,演示者的构造函数将如下所示:
MyPresenter(IVIEw vIEw, IInteractor model);
这样,我可以在测试时交换依赖关系,并轻松模拟视图和模型.但是想象一下我的主持人与一个必须是多个网络呼叫的活动相关联.因此,例如,我有一个活动进行登录的API调用,然后进行安全性问题的另一个活动,然后对GetFrIEndsList进行第三个活动.所有这些呼叫都在同一活动主题中.如何使用上面显示的构造函数执行此 *** 作?或做这种事情的最佳方法是什么?还是我只限于一个模型并在该模型中调用服务?
解决方法:
Presenter构造函数仅需要视图.您不必依赖模型.定义您的演示者和类似的视图.
public interface Presenter{ voID getFrIEndList(Model1 model); voID getFeature(Model2 model2); public interface VIEw{ voID showFrIEndList(Model1 model); voID showFeature(Model2 model2) } }
现在您的实现类仅依赖于视图部分.
休息你的方法将处理您的模型
class PresenterImpl implements Presenter{ VIEw vIEw; PresenterImpl(VIEw vIEw){ this.vIEw = vIEw; } voID getFrIEndList(Model1 model){ //Do your model work here //update VIEw vIEw.showFrIEndList(model); } voID getFeature(Model2 model2) { //Do your model work here //updateVIEw vIEw.showFeature(model2) } }
总结 以上是内存溢出为你收集整理的android MVP-具有多个模型的演示者全部内容,希望文章能够帮你解决android MVP-具有多个模型的演示者所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)