Matisse中主要的模块有Matisse、SelectionCreator、SelectionSpec、MatisseActivity四个类,它们的工作流程如图: 我们先看到Matisse的使用代码,通过使用的代码来解析源码 012345678...
介绍 责任链模式是一种行为模式,它从一个起点发起请求,沿着任务链传递给每个节点的对象,直至有一个节点处理了这个请求。 它使得多个对象都有机会来处理请求,避免了请求的发送者和接受者之间的耦合关系。将这些对象连成一条链,并...
介绍 观察者模式是一种使用频率非常高的设计模式,最常用的地方就是订阅-发布系统。 这个模式的重要作用就是将观察者和被观察者解耦,使他们之间的依赖更小甚至没有。 观察者模式又被称作发布/订阅模式,观察者模式定义了一种一对多的...
参考文章:https://www.jianshu.com/p/9d0575311214 定义 适配器模式把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够一起工作。 使用场景 用电源接口做例子,笔记本电脑的电源一...
前言 发现ONE · 一个耗流量有点可怕…便开始学习图片的三级缓存机制(内存缓存、本地缓存、网络缓存),来提高图片的加载速度,同时减少使用App时的流量消耗。 正文 概述 为什么要用图片缓存技术呢 现在有一个问题:假如每次启动...
前言 由于项目中需要用到刷新的功能以及上拉加载更多的功能,下拉刷新的功能可以通过SwipeRefreshLayout来完成,在只需要实现上拉加载更多即可。因此在这里重载ListView自定义了一个LoadMoreListView,用于支持ListView的上拉加载更多...