https://github.com/googlesamples/都应该看看啊

http://www.cnblogs.com/JustRun1983/p/3727560.html 很好的见解

http://www.jianshu.com/p/01d3c014b0b1 讲解

1.先研究https://github.com/googlesamples/android-architecture ,关于mvp很好的实践。

activity 管理 fragment,界面都用fragment。Presenter和View都是互相引用的。互相引用在Presenter里完成的。

statisticsFragment 是统计数量的,侧滑菜单的第二个选项


new StatisticsPresenter(                Injection.provideTasksRepository(getApplicationContext()), statisticsFragment);
很神奇的一句话吧,new完之后没有赋值。

Injection.provideTasksRepository(getApplicationContext()) 是数据

statisticsFragment 相当于View, 这个View只是接口而已。

mStatisticsView.setPresenter(this);把new出来的,引用到别处了,所以new 出来的不会被回收啊。


statisticsFragment 的onResume里会执行statisticsFragment .start

P把M和v隔离开了。




mvp挺简单的吧



下边看看测试:

http://liuzhijun.iteye.com/blog/1512780

主要用了Mockito, 目的是,主要是测试presenter, 逻辑测试。

@Mock 

1返回指定的值

when(mStatisticsView.isActive()).thenReturn(true);

2验证程序是否走到某一句话。

verify(mStatisticsView).setPresenter(mStatisticsPresenter);


@Captor

verify(mTasksRepository).getTasks(mLoadTasksCallbackCaptor.capture());
        mLoadTasksCallbackCaptor.getValue().onTasksLoaded(TASKS);

把这行getTasks()中的参数,赋值给mLoadTasksCallbackCaptor。















更多相关文章

  1. Android(安卓)ScrollView用法
  2. Android(安卓)设置亮度
  3. [Android]单元测试实例
  4. android GMS认证之CTS测试命令详细
  5. Android(安卓)ListView实现方法一(ListActivity)
  6. 在windows下运行CTS
  7. declare-styleable, 自定义属性
  8. 最简单的BufferQueue测试程序(一)
  9. Android(安卓)中 handle Message 的简单使用笔记

随机推荐

  1. Android.Libraries
  2. Android技能学习
  3. TextView常用属性android:ellipsize
  4. android 仿微信demo————微信消息界面
  5. Android布局属性详解
  6. LinearLayout、RelativeLayout布局
  7. android 仿微信demo————微信消息界面
  8. Android中shape的使用
  9. Android(安卓)初体验
  10. Android(安卓)开发 下载