Android 下拉刷新库,这一个就够了!

阅读文本大概需要 2.6 分钟。

今天给大家推荐一款 Android 平台的下拉刷新库 SmartRefreshLayout,而且是今天在 GitHub 刚开源的,还热乎着呢,之所以给大家推荐,一是我们在实际的开发中,下拉刷新是非常常见的一种交互,但是即使很常见,如果能做的更有意思点,对用户来说体验会更好,二是这个下拉刷新库,不止强大,还非常「智能」,他不只是如其他的刷新布局所说的支持所有的View,还支持多层嵌套的视图结构。


而且它还吸取了各种下拉刷新库的优点,包括谷歌官方的 SwipeRefreshLayout,现在非常流行的 TwinklingRefreshLayout 、android-Ultra-Pull-To-Refresh 等,它有如下常用功能:


  • 支持所有的 View(AbsListView、RecyclerView、WebView....View) 和多层嵌套的 Layout(详细);

  • 支持自定义并且已经集成了很多炫酷的 Header 和 Footer (图);

  • 支持和ListView的同步滚动 和 RecyclerView、AppBarLayout、CoordinatorLayout 的嵌套滚动 NestedScrolling;

  • 支持在Android Studio Xml 编辑器中预览 效果(图);

  • 支持分别在 Default(默认)、Xml、JavaCode 三个中设置 Header 和 Footer;

  • 支持自动刷新、自动上拉加载(自动检测列表滚动到底部,而不用手动上拉);

  • 支持通用的刷新监听器 OnRefreshListener 和更详细的滚动监听 OnMultiPurposeListener;

  • 支持自定义回弹动画的插值器,实现各种炫酷的动画效果.

  • 支持设置主题来适配任何场景的 App,不会出现炫酷但很尴尬的情况;

  • 支持设置多种滑动方式来适配各种效果的 Header 和 Footer:平移、拉伸、背后固定、顶层固定、全屏;

  • 支持内容尺寸自适应 Content-wrap_content;

  • 支持继承重写和扩展功能,内部实现没有 private 方法和字段,继承之后都可以重写覆盖;

  • 支持越界回弹(Listview、RecyclerView、ScrollView、WebView...View)。


我们先来看下一些它支持的部分效果:



使用起来也很简单:


1.在 buld.gradle 中添加依赖



2.在XML布局文件中添加 SmartRefreshLayout



3.在 Activity 或者 Fragment 中添加代码



当然,你还可以为它添加 Header 和 Footer,还有各种支持的属性方法,想要了解更多,欢迎移步 GitHub 地址:


https://github.com/scwang90/SmartRefreshLayout

BGARefreshLayout包含多种下拉刷新效果、上拉加载更多、可配置自定义头部广告位 。效果图:      目前已经实现了四种下拉刷新效果:新浪微博下拉刷新风格(可设置各种状态是的文本,可设置整个刷新头部的背景)慕课网下拉刷新风格(可设置其中的logo和颜色成自己公司的风格,可设置整个刷新头部的背景)美团下拉刷新风格(可设置其中的图片和动画成自己公司的风格,可设置整个刷新头部的背景)类似qq好友列表黏性下拉刷新风格(三阶贝塞尔曲线没怎么调好,刚开始下拉时效果不太好,可设置整个刷新头部的背景)一种上拉加载更多效果新浪微博上拉加载更多(可设置背景、状态文本)开发者也可以继承BGARefreshViewHolder这个抽象类,实现相应地抽象方法做出格式各样的下拉刷新效果 【例如实现handleScale(float scale, int moveYDistance)方法,根据scale实现各种下拉刷新动画】和上拉加载更多特效,可参考 BGAMoocStyleRefreshViewHolder、BGANormalRefreshViewHolder、 BGAStickinessRefreshViewHolder、BGAMeiTuanRefreshViewHolder的实现方式。目前存在的问题当配置自定义头部广告位可滚动时,内容区域和广告位还不能平滑过度。当BGAStickyNavLayout中嵌套RecyclerView或AbsListView,并且第一页的最后一个item刚好在最底部时,加载更多视图会悬浮在最后一个item上面正在刷新或加载更多时,用户上下滑动不会让下拉刷新视图和加载更多视图跟着滑动
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值