如上圖所示,MVC的大體理解如上,其中
Model層: 數(shù)據(jù)的操作
View層: 顯示給用戶
Control層: 處理與用戶的交互,并向model層發(fā)送
舉個例子:
? ? 用戶登錄
? ? View層:?
? ? ? ? 1. 顯示登陸的界面
? ? ? ? 2. 顯示登陸的狀態(tài)
? ? ? ? 3. 根據(jù)登陸結果進行視圖選擇
? ? ? ? ?4. 向Control層發(fā)起登陸的請求?
? ? Control層:?
? ? ? ? 1. 讀取用戶輸入的用戶名+密碼,調(diào)用登陸的接口,進行登錄的操作
? ? ? ? 2. 將請求的結果發(fā)送給Model層
? ? Model層:
? ? ? ? ?1. 根據(jù)Control發(fā)送過來的數(shù)據(jù)進行加工處理之后,通知View層進行不同的界面顯示
在MVC模式下,Activity或Fragment作為View的容器,卻時常也在承擔著Control的作用,這樣的前提下,相當于Activity承受了View+Control的作用,這樣會導致代碼比較多,耦合比較嚴重
參考: