MVP和BaseActivity - 最佳实践

时间:2016-11-21 16:21:27

标签: android mvp

我正在使用MVP模式构建我的第一个Android应用程序。 除非我应该处理BaseActivity的使用方式,否则一切似乎都很清楚。

BaseActivity的目的是使用navigationDrawer,例如选项菜单以及其他可能与其他活动相同的其他方法。

我的问题是:

  • 如何处理MVP结构中的BaseActivity?
  • 你也会签订合约吗?
  • 您是否将常用方法放在utils类中而不是BaseActivity中并在Presenter中调用它?不确定它是否总是可能

我期待着您的最佳建议,

这是我目前的结构:

Current MVP Structure

3 个答案:

答案 0 :(得分:1)

嗨使用MVP模式你可以处理很多事情,

  1. 您不需要任何工具栏设置。

  2. 您可以直接从基本活动设置标题和其他内容。

  3. 直接从基础活动中使用书法设置字体。

  4. 在基地活动中宣布黄油刀

  5. 设置布局

  6. 在api通话期间处理任何异常。

  7. 使用抽象方法定义如何管理生命周期。

  8. 还有更多我们可以参与基础活动的事情。

    MVP用于更好地优化代码。

    您将在Presenter中执行所有业务逻辑。

    我已经创建了一个项目库。

    查看更多details

    由于

答案 1 :(得分:0)

您应该在所有活动之间放置要共享的所有代码。您可以以常用方式提供演示者。如果您希望让演示者了解活动生命周期,您可以调用演示者的生命周期方法。通常我会将滑动菜单实现为具有自己的演示者的单独视图

答案 2 :(得分:0)

在Android Activity / Fragment中的MVP中 - 它是你的视图 在onActivityCreated(...)中,您可以创建演示者; 屏幕之间的导航在视图中声明。

实际上您无需为Presenter创建界面: http://blog.karumi.com/interfaces-for-presenters-in-mvp-are-a-waste-of-time/

最佳做法:https://github.com/googlesamples/android-architecture