Hankkin / MvpDemo

init mvp okgo
27 stars 11 forks source link

第一次写mvp,按照你那写的但是FrmeMvpHomePresenter.getData()这个报空指针 #1

Open Troll4it opened 7 years ago

Troll4it commented 7 years ago

你好,这是什么问题,求解,谢谢

1pq0pr 35x nv0vpoh5ae9s

sv1eu ln92e e n1lbvb h1

Hankkin commented 7 years ago

你好 目测是你的presenter为null 没有初始化

Troll4it commented 7 years ago

但是这个初始化不是在这里就初始化了吗??还需要在哪里初始化 public abstract class MvpActivity<V,P extends BasePresent> extends BaseAcitvity{

protected P presenter;

@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    Log.i("FrameMvpActivity", "onCreate: ");
    presenter = initPresenter();
}

@Override
protected void onResume() {
    super.onResume();
    presenter.attach((V) this);

}

@Override
protected void onDestroy() {
    presenter.detach();
    OkGo.getInstance().cancelTag(this);
    super.onDestroy();
}

public abstract P initPresenter();

}

Hankkin commented 7 years ago

你的FrameMvpActivity继承了MVPActivity 实现了initPresenter()抽象方法了,FrameMvpActivity里面初始化你FrameMvpActivity的Presenter啊

Troll4it commented 7 years ago

@Override public FrmeMvpHomePresenter initPresenter() { return new FrmeMvpHomePresenter(); }这个不是的吗?

Hankkin commented 7 years ago

和我的代码对比一下看看哪里不一样,这样我也看不出来

Troll4it commented 7 years ago

好的,谢谢

Troll4it commented 7 years ago

image image 我只要把你的presenter.getGankData();放到外面也是空指针错误