Android微信九宫格图片展现控件

版权声明:本文为xing_star原创文章,转载请注明出处!html

本文同步自http://javaexception.com/archives/214java

Android微信九宫格图片展现控件

半年前,公司产品的帖子流这块进行大改版,像素级的复制微信朋友圈的效果,发现微信的图片展现9宫格有些很差处理,通过几番google,找到了一个轮子,https://github.com/HMY314/NineGridLayout ,这个项目就是为了微信9宫格而诞生的,真是方便了后来的人,极大提升了咱们的开发效率。git

简单说下NineGridLayout的实现吧,NineGridLayout继承的是ViewGroup,图片所在的区域都是一个个的ImageView,这些ImageView在被添加到父容器以前,已经计算出了宽高,以及对应在NineGridLayout的坐标,addView的时候就已经大体固定了ImageView的位置了。固然了在图片被真正加载出来后,也是支持从新设置ImageView的位置。github

总的来讲,代码不是很复杂,运行github上的sample,本身跟踪下执行过程,应该就可以看懂做者的设计思想,因而我就复制了这两个关键类,应用到了公司的产品中。微信

此外,咱们还能够在这个代码的基础上进行修改,知足一些变种的图片展现需求。google

咱们能够看一下,sample中的一些展现效果,以下图url

 

 

最近几天新产品有个需求,我对这个开源项目进行了一些定制,变成了以下的效果设计

 

 

 

这个项目,仍是可以给咱们带来很大的参考价值,基于这个项目作一些二次开发,能够知足相似的产品需求。htm

Github项目地址:

https://github.com/HMY314/NineGridLayoutblog

相关文章
相关标签/搜索