代理模式(Proxy)
1.Java中常见的有三种代理模式,静态代理、动态代理、CGLIB。
我有一壶酒 足以慰风尘
1.Glide的LruCache基于LinkedHashMap实现,最近最少使用,我们需要关心的是如何对数据进行保存删除,并按照这个策略实现存储的。
2.LinkedHashMap中几个重要方法:1
2
3
4
5
6
7
8
9
10
11
12
13/**
* The head (eldest) of the doubly linked list.
*/
//这里定义了头部节点,按照注释即为最不常用的
transient LinkedHashMapEntry<K,V> head;
/**
* The tail (youngest) of the doubly linked list.
*/
//同样的尾节点,即最近使用的
transient LinkedHashMapEntry<K,V> tail;
//是否排序,默认是false的
final boolean accessOrder;
1.顾名思义,将动画拆分成一帧一帧的去加载(drawable文件下)。但是同样伴随一个问题OOM,如果图片量过于多,一次性加载到内存中必然会有OOM的风险。
2.通过标签animation-list将动画组合,开启必要的属性如:是否循环,每帧的时间,最后通过AnimationDrawable开启与关闭回收。
3.对于OOM的问题,首先应该考虑到的是对BitMap进行内存复用,逐一加载图片(避免一次性加载所有的图片到内存中)。思路
1.视图动画,可作用与视图控件(不包含颜色、背景、长度等),视图动画分为四种:
Translate:平移动画
scale: 缩放动画
rotate:旋转动画
alpha: 透明度动画
2.不写了,这么简单的东西写锤子。。。。。