我想了解MvP设计模式的概念。我的意思是,我明白了,这很容易。主要问题是最佳实施。我试图让我自己BaseActivity,BasePresenter和基本视点只是为了提取我的所有活动的联合的一部分,我已经完成这件事是这样的:我应该在Mosby MvP概念中创建BaseActivity/Presenter和View吗?
BaseActivity
public abstract class BaseActivity<T extends BasePresenter<? extends IBaseView>> extends FragmentActivity implements IBaseView {
protected T presenter;
private ActivityConfig activityConfig;
@Override
final protected void onCreate(Bundle savedInstanceState) {
activityConfig = getConfig();
super.onCreate(savedInstanceState);
presenter = createPresenter();
setContentView();
initLibraries();
prepareView(savedInstanceState);
addFragments();
}
protected abstract ActivityConfig getConfig();
protected abstract T createPresenter();
protected abstract void prepareView(Bundle savedInstanceState);
protected abstract void addFragments();
private void setContentView(){
View root = View.inflate(this, activityConfig.layoutId, null);
setContentView(root);
}
private void initLibraries() {
ButterKnife.bind(this);
Timber.plant(new Timber.DebugTree());
}
@Override
public BaseActivity getCurrentContext() {
return this;
}
@Override
public T getPresenter() {
return presenter;
}
}
BasePresenter
public abstract class BasePresenter<T extends IBaseView> {
public abstract void loadData(boolean refresh);
}
基本视点
public interface IBaseView {
BaseActivity getCurrentContext();
BasePresenter getPresenter();
}
它工作正常,但我觉得这是不好的设计,使我想用Mosby代替。问题是,所有的教程都不涉及基类的方面,他们只是使用Mosby的基础(我认为这很糟糕,因此我必须复制我的代码(例如Butterknife.bind())。你们给我一些很好的设计,快速启动类莫斯MVP或者给我一些建议,我应该如何分配我的项目由于
有到MVP Android上许多不同的方法,他们中的每一个与*优点*和*缺点*,很难说哪一个是正确的或更好你将不得不为自己找到一个最适合你的人。 –