用户单击按钮后,我想读取活动的 TextViews 中的内容,然后从演示者调用方法以根据发送给它的信息获取返回值。但是我不知道演示者是否应该自己获取这些数据,或者我是否应该在调用他的方法之一时从 Activity 类传递给他(这意味着获取活动类中 TextFields 中的数据,然后发送当我调用 Presenter 方法时将数据作为参数)。我已经尝试了这两种方法,但我不知道哪种方法更有条理。
3 回答
慕标琳琳
TA贡献1830条经验 获得超9个赞
使用 MVP 架构模式时,您应该有一个对Presenteron 的引用View(在这种情况下, theView是您的Activity)。他们有非常不同的职责:
你
View应该尽可能的愚蠢,也就是说,它应该只负责向用户显示任何数据并收集用户输入。你
Presenter应该负责处理双方所有显示的数据View,并充当的中间人View和Model。换句话说,对于每个可能的用户输入,都应该有一种Presenter能够处理它的方法。
例如,在您的情况下,View负责将 TextView 的内容处理到Presenter. 然后,Presenter必须将这些内容传递给Model,它会根据您的业务逻辑对其进行处理。当Model完成处理时,它返回结果给Presenter,然后准备该内容要被显示在View。当内容准备好后,Presenter然后将其发送到View.
了解了所有这些,您应该能够回答您的问题。它会是这样的(伪代码):
class MyActivity
{
// you should inject this
Presenter myPresenter;
TextView myTextView;
...
myPresenter.doStuff(myTextView.getText().toString());
}
添加回答
举报
0/150
提交
取消
