我们应该检查Presenter中的视图可见性还是MVP模式中的Activity?

时间:2018-01-11 11:42:41

标签: android mvp

所以,我正在关注MVP模式,我将每个视图任务委托给演示者,就像它应该完成的方式一样

代表。 :

@Override
public void onSurfaceTextureAvailable(SurfaceTexture surfaceTexture, int i, int i1) {
    if(textureView.getVisibility != View.GONE)        
        mPresenter.onSurfaceTextureAvailable(surfaceTexture);
}

我想知道是否允许在我的活动中直接检查视图的可见性(这是MVP中的视图)?

谢谢!

1 个答案:

答案 0 :(得分:1)

View图层只负责向用户显示视图。它没有业务逻辑。 Presenter层负责从模型到视图层显示数据。它处理后台任务,调用模型上的操作和在视图中设置数据。您应该在Activity这样查看。

public class YourActivity extends BaseActivity implements MainMvpView {

@Inject YourPresenter yourPresenter;

......


@Override
public void onSurfaceTextureAvailable(SurfaceTexture surfaceTexture, int i, int i1) {
    if(textureView.getVisibility != View.GONE)        
        mPresenter.onSurfaceTextureAvailable(surfaceTexture);
}

......

}