1.简介
这是一个用于实现像微信朋友圈和微博的类似的九宫格图片展示控件,通过自定义viewgroup实现,使用方便。
多图根据屏幕适配,单张图片时需要自己指定图片的宽高;
2.使用方法
引用:
compile 'com.w4lle.library:NineLayout:1.0.0'
使用:
在项目的layout文件中添加如下xml即可加入到布局文件
<com.w4lle.library.NineGrIDlayout androID:layout_margintop="8dp" androID:ID="@+ID/iv_ngrID_layout" androID:layout_height="wrap_content" androID:layout_wIDth="match_parent" />
支持 padding 和margin
Java API :
写好自己的Adapter继承自NineGrIDAdapter:
class Adapter extends NineGrIDAdapter { public Adapter(Context context,List List) { super(context,List); } @OverrIDe public int getCount() { return (List == null) ? 0 : List.size(); } @OverrIDe public String getUrl(int position) { return getItem(position) == null ? null : ((Image)getItem(position)).getUrl(); } @OverrIDe public Object getItem(int position) { return (List == null) ? null : List.get(position); } @OverrIDe public long getItemID(int position) { return position; } @OverrIDe public VIEw getVIEw(int i) { ImageVIEw iv = new ImageVIEw(context); iv.setScaleType(ImageVIEw.ScaleType.CENTER_CROP); iv.setBackgroundcolor(color.parsecolor("#f5f5f5")); Picasso.with(context).load(getUrl(i)).placeholder(new colorDrawable(color.parsecolor("#f5f5f5"))).into(iv); return iv; }}
代码中使用 :
adapter = new Adapter(context,image);vIEwHolder.ivMore.setAdapter(adapter);vIEwHolder.ivMore.setonItemClickListerner(new NineGrIDlayout.OnItemClickListerner() { @OverrIDe public voID onItemClick(VIEw vIEw,int position) { //do some thing Log.d("onItemClick : " + position); }});
其余API:
setsetGap //设置图片间隔setDefaultWIDth //设置单张图片时的宽度,默认 140 * densitysetDefaultHeight //设置单张图片时的高度,默认 140 * density
3.效果
github地址: https://github.com/w4lle/NineGridView
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。
总结以上是内存溢出为你收集整理的Android仿微信微博多图展示效果全部内容,希望文章能够帮你解决Android仿微信微博多图展示效果所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)