diff --git a/README-cn.md b/README-cn.md index 2e0d39d96..f7cf313ba 100644 --- a/README-cn.md +++ b/README-cn.md @@ -1,4 +1,9 @@ ->由于最近用RecyclerView用的比较多所以最近写的一个开源项目,写了一个集成了RecyclerViewAdapter的常用功能的基类,希望能够帮助到大家,如果使用上遇到什么问题或想加入开发,把这个项目一起做的更好,**Star我的项目可加Q群558178792,申请的时候把GitHub的账号名字备注上否则不予通过,谢谢配合。**中国有句古话叫“授人以鱼不如授人以渔”,不仅仅提供使用,还写了如何实现的原理:「[RecyclerView.Adapter优化了吗?](http://blog.csdn.net/cym492224103/article/details/51113321)」「[BaseRecyclerAdapter之添加动画](http://blog.csdn.net/cym492224103/article/details/51150108)」「[BaseRecyclerAdapter之添加不同布局(头部尾部)](http://blog.csdn.net/cym492224103/article/details/51214362)」 +>由于最近用RecyclerView用的比较多所以最近写的一个开源项目,写了一个集成了RecyclerViewAdapter的常用功能的基类,希望能够帮助到大家,如果使用上遇到什么问题或想加入开发,把这个项目一起做的更好,**Star我的项目可加Q群558178792,申请的时候把GitHub的账号名字备注上否则不予通过,谢谢配合。**中国有句古话叫“授人以鱼不如授人以渔”,不仅仅提供使用,还写了如何实现的原理: +- 「[RecyclerView.Adapter优化了吗?](http://www.jianshu.com/p/411ab861034f)」 +- 「[BaseRecyclerAdapter之添加动画](http://www.jianshu.com/p/fa3f97c19263)」 +- 「[BaseRecyclerAdapter之添加不同布局(头部尾部)](http://www.jianshu.com/p/9d75c22f0964)」 +- 「[BaseRecyclerAdapter之添加不同布局(优化篇)](http://www.jianshu.com/p/cf29d4e45536)」 + # BaseRecyclerViewAdapterHelper 一个强大并且灵活的RecyclerViewAdapter,欢迎使用。(喜欢的可以**Star**一下) @@ -25,7 +30,7 @@ 然后在dependencies添加: ``` dependencies { - compile 'com.github.CymChad:BaseRecyclerViewAdapterHelper:v1.5.2' + compile 'com.github.CymChad:BaseRecyclerViewAdapterHelper:v1.5.3' } ``` @@ -82,6 +87,30 @@ quickAdapter.openLoadAnimation(new BaseAnimation() { } }); ``` +#如何添加多种类型item? +``` +public class MultipleItemQuickAdapter extends BaseMultiItemQuickAdapter { + + public MultipleItemQuickAdapter(Context context, List data) { + super(context, data); + addItmeType(MultipleItem.TEXT, R.layout.text_view); + addItmeType(MultipleItem.IMG, R.layout.image_view); + } + + @Override + protected void convert(BaseViewHolder helper, MultipleItem item) { + switch (helper.getItemViewType()) { + case MultipleItem.TEXT: + helper.setImageUrl(R.id.tv, item.getContent()); + break; + case MultipleItem.IMG: + helper.setImageUrl(R.id.iv, item.getContent()); + break; + } + } + +} +``` #使用它添加头部添加尾部 ``` mQuickAdapter.addHeaderView(getView()); @@ -130,27 +159,6 @@ public class SectionAdapter extends BaseSectionQuickAdapter { }); } ``` -#自定义item类型 -``` -public class XXXXXXAdapter extends BaseQuickAdapter { - /... - @Override - protected int getDefItemViewType(int position) { - /... - } - - @Override - protected BaseViewHolder onCreateDefViewHolder(ViewGroup parent, int viewType) { - /... - } - - @Override - protected void onBindDefViewHolder(RecyclerView.ViewHolder holder, final int position) { - /... - } - -} -``` >**持续更新!,所以推荐Star项目** #感谢 diff --git a/README.md b/README.md index d4cf4a61f..31b1037a7 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,7 @@ Add it in your root build.gradle at the end of repositories: Add the dependency ``` dependencies { - compile 'com.github.CymChad:BaseRecyclerViewAdapterHelper:v1.5.2' + compile 'com.github.CymChad:BaseRecyclerViewAdapterHelper:v1.5.3' } ``` @@ -81,6 +81,30 @@ quickAdapter.openLoadAnimation(new BaseAnimation() { } }); ``` +#Use it custom item view type +``` +public class MultipleItemQuickAdapter extends BaseMultiItemQuickAdapter { + + public MultipleItemQuickAdapter(Context context, List data) { + super(context, data); + addItmeType(MultipleItem.TEXT, R.layout.text_view); + addItmeType(MultipleItem.IMG, R.layout.image_view); + } + + @Override + protected void convert(BaseViewHolder helper, MultipleItem item) { + switch (helper.getItemViewType()) { + case MultipleItem.TEXT: + helper.setImageUrl(R.id.tv, item.getContent()); + break; + case MultipleItem.IMG: + helper.setImageUrl(R.id.iv, item.getContent()); + break; + } + } + +} +``` #Use it add header and footer ``` mQuickAdapter.addHeaderView(getView()); @@ -129,26 +153,5 @@ public class SectionAdapter extends BaseSectionQuickAdapter { }); } ``` -#Use it custom item view type -``` -public class XXXXXXAdapter extends BaseQuickAdapter { - /... - @Override - protected int getDefItemViewType(int position) { - /... - } - - @Override - protected BaseViewHolder onCreateDefViewHolder(ViewGroup parent, int viewType) { - /... - } - - @Override - protected void onBindDefViewHolder(RecyclerView.ViewHolder holder, final int position) { - /... - } - -} -``` #Thanks [JoanZapata / base-adapter-helper](https://github.com/JoanZapata/base-adapter-helper)