我一直在学习和整合MVP pattern,很少有问题。
我从这张图中了解到的是
活动将创建的实例Presenter,并将其引用和model对象传递给演示者
MainPresenter mainPresenter = new MainPresenter(this, new MainModel());
Run Code Online (Sandbox Code Playgroud)
接下来,如果演示者需要从本地首选项或远程存储或获取任何数据,它将询问模型。
然后模型将询问存储库以存储和检索数据。
我遵循了一些教程,这就是我实现模式的方式。
接口
public interface MainActivityMVP {
public interface Model{
}
public interface View{
boolean isPnTokenRegistered();
}
public interface Presenter{
}
}
Run Code Online (Sandbox Code Playgroud)
活动
MainPresenter mainPresenter = new MainPresenter(this, new MainModel());
mainPresenter.sendDataToServer();
Run Code Online (Sandbox Code Playgroud)
主持人
public void sendDataToServer() {
// Here i need to ask `model` to check
do network operation and save data in preference
}
Run Code Online (Sandbox Code Playgroud)
现在的问题是我需要访问上下文sharedPreference,但是我没有经过context任何地方。我也不想使用static context。我想知道将上下文传递到MVP模式的正确方法。
performance android android-layout android-fragments android-mvp
如前所述这里,和其他一些地方,它是更好地使用fragment,而不是activities用bottom navigation
如果不推荐,那么我有几个问题,
我将在底部导航中有5个项目,所有项目都将从Web服务检索数据,并且有大量数据,每个项目都必须进行解析并具有复杂的布局。
现在我的问题是,具有这些片段类型的活动能否对性能产生任何影响。
以及为什么不建议将活动与 bottom navigation.