- [fix] 修复loopPager嵌套在RecyclerView或ViewPager中时,进行自动动画翻页时的几个经典bug,如翻页动画丢失,动画卡在一半
- [fix] 修复liveLoopPager闪退问题,liveLoopPager的duration改为LiveData类型
- [feature] 为DrawableKTX增加简单的缓存机制,调用方需要设置cacheKey以使其生效,并需要保证cacheKey不变且唯一
- [improve] loop-pager在onStop时,停止轮播,onStart恢复轮播
- [feature] loop-pager提供live支持
- [feature] loop-pager支持设置滚动动画时长
- [feature] glideImage提供live支持
- [feature] 添加nestedScrollableChild,帮助解决ViewPager2等的嵌套导致的滑动冲突问题
- [improve] 为viewPager添加以Context为接收者的函数
- [feature] 添加brick函数用于嵌入普通View,废弃view函数
- [improve] 为ViewKTX中的函数均添加以Context为接收者的函数
- [feature] 封装loop-pager组件,提供轮播图和pager指示器的实现 (基于CircleIndicator实现)
- improve: 对于LiveData添加了toVisibility()扩展函数,inverse扩展属性,并重载了not操作符
- improve: 为资源相关扩展函数添加类型注解
- improve: RecyclerView,SmartRefresh等添加Receiver为Context的扩展函数
- improve: runAnimator和live组件允许传入LifecycleOwner,避免在Fragment使用时造成内存泄露
- improve: runAnimator增加生命周期监听并自动取消动画
- feature: 提供更易调用的
LiveData.bind(context, block)
和LiveData.bindNotNull(context, block)
方法,方便开发者绑定LiveData到View。 - improve: 优化
LiveData.bind(context, block)
和LiveData.bindNotNull(context, block)
方法的实现,如果value无变化,不会重复调用block
方法
注意,以上两个方法所接收的Context必须是FragmentActivity一类的
LifecycleOwner
,否则绑定无法生效
- feature: 统一为ViewGroup构造的View添加
margin
参数
- Improve: 移除
Fragment.fragmentPager()
方法,改用参数parentFragment
参数来实现此功能
- Improve:
smartRefresh
提到单独module:com.github.robin8yeung.BrickUI:brick-ui-smart-refresh。(注意:用到smartRefresh的话必须引入此依赖) - feature: 添加
Fragment.fragmentPager()
方法,来构造基于Fragment生命周期的fragmentPager - feature: 统一增加
foreground
属性(系统版本23以上才支持) - feature: 提供
livePlaceHolder()
构造占位View
- Improve: 为LiveData增加combine扩展函数,方便合并2个LiveData的值来处理UI状态
- Improve: 允许RecyclerView类控件接受非RecyclerItemData类型的数据,但仍然强烈建议传入RecyclerItemData类型的数据,以使用DiffUtil来更新RecyclerView
- New: 增加CoordinatorLayout相关的支持
- New: 增加TabLayout相关的支持
- Improve: 补充LiveLayoutKTX中几个Context的扩展布局函数
- Improve: 对几种Widget引入泛型,避免丢类型
- New: 增加sourceJar打包,避免使用时无法链接到源码
- New: 首次正式发布版本