MVP 和多种行为

MVP and multiple behaviours

我一直在尝试使用 MVPdagger 制作一个 简单的记事本应用程序 (我的第一个应用程序)。 我已经理解了大部分内容,但如果我有多种行为,我会有点迷茫。我会解释。
我的项目层次结构是这样的: Click here

在解释了所有这些之后,您应该(可能)了解该项目的工作原理(随意批评层次结构)。
现在我想添加一个创建注释的按钮。我将在 mainactivity 上添加监听器并将其重定向到 Presenter...
但是演示者会处理代码以添加新注释(开始新意图等)还是我应该创建一个新的 class 来独立处理这些东西?
如果将来我想添加更多按钮,例如删除所有注释或启动帮助对话框,我是否应该为每个按钮制作一个 class 来处理代码?
我怎样才能组织这样的事情?

导航未在 MVP 模式中正式解决。嗯,我觉得有两个好办法:

1 - 您可以创建一个 Navigator/Router 来为您处理导航。所以演示者将所有这些逻辑都传递给导航器或...

2 - 您可以在 Activity 中处理屏幕更改。我真的相信屏幕变化是 View 的责任,所以你要做的就是将导航命令传递给 View。喜欢:

interface MainView{
    void navigateToAddCardScreen()
    void navigateToLoginScreen()
    void navigateSomeScreen()
}

我更喜欢第二种选择。导航器使代码对我来说过于细化...

希望能帮到你