????????
??????????????????????????????App?????????Activity?????????η????????????MVC???????????????App?????xml?????????Activity??setContentView?????View?????Activity????????????Controller?????????????????????????????Model??????????????ActivityΥ??????????????????????????????????????????????д?????????????????????????????????????
?????У?????MVP????
????MVP???
????MVP??Model-View-Presenter????????????????????????????????????£?

???????????????????MVP??????????????????
????????View?????Android?е?Activity??????????????View???????View interface?????View???????View???View interface??Presenter???н?????????????
????????Model?????????????????????????洢???????????????????Model???????Model interface????????????
?????м??Presenter?????View??Model???????м?????????????????????????????
??????????????—MVP??MVC
???????????????Σ??????????MVP?????????MVC????????????
??????????????MVC???
????MVC???
????MVC????????????????????????????
?????????View??????????檔
????????????Controller????????????
????????Model??????????檔
???????????????????MVC????????

????View???????Controller??Controller??????????????Model???????Model???μ?????????View??????????????
????MVP??MVC???
??????????????MVC??MVP???????к?????????????????£?
????MVP?????
????View???????Model???????????????Presenter????????Model????????
????Presenter??View??????????????????е??
???????View??Presenter????????????????View????????Presenter???????????
????MVC?????
????View??????Model????????
????Controller??????????????????????View?????
????????????????????View??
???????
????MVC??MVP????????????к????????????????????в???????????????????Android App??????????????????
????MVP?????Android???????
????????????????????????????
?????????????°?????????????????????????????????????????????棬??????????????????????????
????UI???棺


??????????????

???????????
?????????model?????model???????????????????????????????????model??impl??????????????????????????
????Model????????
????public interface IInfoModel {
????//???????????????????
????InfoBean getInfo();
????//???????????????
????void setInfo(InfoBean info);
????}
????Model?????????
????public class InfoModelImpl implements IInfoModel {
????//???洢????
????private InfoBean infoBean = new InfoBean();
????@Override
????public InfoBean getInfo() {
????//???洢?????????к?????
????return infoBean;
????}
????@Override
????public void setInfo(InfoBean info) {
????//???洢?????????к?????
????infoBean = info;
????}
????}
?????????View?????View??????????????????????????????????????View??impl???????????????????????????
????View?????????
????public interface IInfoView {
????//??UI???????????
????void setInfo(InfoBean info);
????//??UI?????????
????InfoBean getInfo();
????}