oschina 中收录了类Pinterst 瀑布流的一个实现方式http://www.oschina.net/p/android_waterfall

实现方式是ScrollView 嵌套多列LinearLayout ,通过计算当前图片与上下两屏距离来判断是否被回收或者重载。

单个瀑布流也可以从布局文件中 Infalte 出来,实现自定义。

Github 上还有另外一种 瀑布流的实现方式 https://github.com/huewu/PinterestLikeAdapterView

Git clone git://github.com/huewu/PinterestLikeAdapterView.git

韩文。韩国人写的。

写的有点特别 。

我估计: 他首先将google的 android.widget 包中的 AdapterView ,AdapterListView和 ListView 源码copy下来。

对其中的某些部分进行了修改.(代码太多 还没有看完) ,最后使用 MultiColumnListView 类实现了 多列的ListView。

如果预计没错 ,单个View的显示方式和回收方式是和ListView相同的,有个pool of recycled views。Adapter 中调用getView(int posititon ,View converView ...) 函数 converView是复用View 。其调用方式和ListView GridView 无异。

作者写了这个组件的style.xml ,布局调整不需要硬编码。 优点多多 , 我也只看了半个下午的时间,明天继续研究。

so. 推荐给大家 一起研究研究

--EOF--


更多相关文章

  1. listview更改选中时item背景色
  2. 浅谈Android引用计数(2)
  3. android客户端使用网络数据压缩
  4. Android(安卓)项目规范
  5. 一种极低成本的Android屏幕适配方式
  6. android recycleView局部刷新的选择
  7. Android(安卓)防止手机休眠
  8. Android基础入门教程——7.1.3 Android(安卓)HTTP请求方式-HttpU
  9. Android中的文件存储数据方式 .

随机推荐

  1. Android数字签名
  2. 懒骨头的Android文档备份1:建造你的第一个
  3. Android原生(Native)C开发之一:环境搭建篇
  4. Android(安卓)PinyinIME 源码笔记 -- 1.
  5. Android事件总线(三)otto用法全解析
  6. Android(安卓)ExoPlayer播放音视频的使用
  7. android:ellipsize省略文字用法
  8. Android设计模式系列(1)--SDK源码之组合
  9. android开机自启动APP及使用adb命令测试
  10. Android(安卓)常用的命名规范