用户单击按钮后,我想读取活动的 TextViews 中的内容,然后从演示者调用方法以根据发送给它的信息获取返回值。但是我不知道演示者是否应该自己获取这些数据,或者我是否应该在调用他的方法之一时从 Activity 类传递给他(这意味着获取活动类中 TextFields 中的数据,然后发送当我调用 Presenter 方法时将数据作为参数)。我已经尝试了这两种方法,但我不知道哪种方法更有条理。
3 回答
慕标琳琳
TA贡献1830条经验 获得超9个赞
使用 MVP 架构模式时,您应该有一个对Presenter
on 的引用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
提交
取消