用戶單擊按鈕后,我想讀取活動的 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
提交
取消
