RecyclerView的黄金伴侣

记得在15年年初,大部分Android开发者还没开始接触Recyclerview的时候,我尝试着使用了下,当时关于他的资料网上不多,用着真心难受,虽然他很强大,很灵活,可是对于用习惯了Listview的我来说,用着很不习惯。不知道各位开始使用感受如何。

今天给大家介绍两个开源库,让使用Recyclerview方便到一塌糊涂。

  • 通用的Adapter适配器(BaseRecyclerViewAdapterHelper):Github地址

特点:
1. 添加Header和Footer的方法。
2. 添加了Item的点击监听。
3. 添加了上拉加载更多。
4. 兼容实现google的下来刷新。
5. 实现了不同的滑动动画。
6. 更重要的是他是通用万能的Adapter。
7. 等等。。。。请到github看文档。

  • RecyclerView的分割线(RecyclerView-FlexibleDivider):Github地址

特点:
1. 控制方便,例如设置margin,线宽,颜色等等。
2. 效率高,滑动流畅。
3. 线条样式多。

一、先看“BaseRecyclerViewAdapterHelper”

BaseRecyclerViewAdapterHelper

BaseRecyclerViewAdapterHelper

BaseRecyclerViewAdapterHelper

以上三张图片来自BaseRecyclerViewAdapterHelper.

使用代码如下:

public class QuickAdapter extends BaseQuickAdapter<Status> {
    public QuickAdapter() {
        super(R.layout.tweet, DataServer.getSampleData());
    }

    @Override
    protected void convert(BaseViewHolder helper, Status item) {
        helper.setText(R.id.tweetName, item.getUserName())
                .setText(R.id.tweetText, item.getText())
                .setText(R.id.tweetDate, item.getCreatedAt())
                .setVisible(R.id.tweetRT, item.isRetweet())
                .linkify(R.id.tweetText);
                Glide.with(mContext).load(item.getUserAvatar()).crossFade().into((ImageView) helper.getView(R.id.iv));
    }
}

更多使用请看github的使用文档。我这里不贴了。

二、再看“RecyclerView-FlexibleDivider”

RecyclerView-FlexibleDivider
RecyclerView-FlexibleDivider

以上两张图片来自RecyclerView-FlexibleDivider;

我项目有个页面发现滑动卡顿,性能很差,最后找到原因是自定义分割线的问题,果断换用该库,解决了卡顿现象。

贴出部分代码,详情见github文档。

RecyclerView recyclerView = (RecyclerView) findViewById(R.id.recyclerview);
recyclerView.addItemDecoration(
        new HorizontalDividerItemDecoration.Builder(this)
                .color(Color.RED)
                .sizeResId(R.dimen.divider)
                .marginResId(R.dimen.leftmargin, R.dimen.rightmargin)
                .build());

以上代码是贴的,只是让大家有个大概的认识,具体请点开链接,有Demo和文档,方便学习和使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值