之前在面试的时候 被问过瀑布流的问题 貌似那个面试官是蘑菇街出来的
当时压根不知道瀑布流是什么东东 也就说了些自定义控件的思路
到这几天 想起来 也就去网上找了些瀑布流的demo
关于瀑布流的思路:
继承scroillView
把屏幕划分成n列 每列都是一个垂直的LinearLayout
记录每一列的高度
记图片为一个单元
当要添加一个单元的 寻找 高度最低的列 添加到其下
实现分页显示:
规定每页显示的单元数量
在action_up中判断 getScrollY+GetHeight==最大列高? 来判断是否到达底部
到底 则再添加相应数量单元
回收图片问题
在action_up中判断 当图片在屏幕之外时进行回收 用一张公共图片来代替显示
不足: 当要加载新页面时 由于此时下方图片在屏幕之外 会先进行一次回收 然后才加载图片 不过不影响性能