为了账号安全,请及时绑定邮箱和手机立即绑定

Android MVP - 我应该在哪里阅读 Textview?

Android MVP - 我应该在哪里阅读 Textview?

呼啦一阵风 2021-07-23 21:13:17
用户单击按钮后,我想读取活动的 TextViews 中的内容,然后从演示者调用方法以根据发送给它的信息获取返回值。但是我不知道演示者是否应该自己获取这些数据,或者我是否应该在调用他的方法之一时从 Activity 类传递给他(这意味着获取活动类中 TextFields 中的数据,然后发送当我调用 Presenter 方法时将数据作为参数)。我已经尝试了这两种方法,但我不知道哪种方法更有条理。
查看完整描述

3 回答

?
慕标琳琳

TA贡献1830条经验 获得超9个赞

使用 MVP 架构模式时,您应该有一个对Presenteron 的引用View(在这种情况下, theView是您的Activity)。他们有非常不同的职责

  • View应该尽可能的愚蠢,也就是说,它应该只负责向用户显示任何数据并收集用户输入。

  • Presenter应该负责处理双方所有显示的数据View,并充当的中间人ViewModel。换句话说,对于每个可能的用户输入,都应该有一种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());

}


查看完整回答
反对 回复 2021-07-29
  • 3 回答
  • 0 关注
  • 182 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信