/BRV

🌽 Android 最强大的RecyclerView库, 比BRVAH/MultiType更强大/优雅

Primary LanguageKotlinApache License 2.0Apache-2.0

1600

可能是最强大的RecyclerView框架

使用文档 | 备用访问


本框架在不影响RecyclerView的任何函数组件使用基础上开发. 本项目也将一直保持维护状态


欢迎贡献代码/问题


  • 开发速度No.1
  • 高内聚低耦合
  • 刷新不闪屏
  • 双向数据绑定
  • 无Adapter
  • 自动化

功能

  • 快速创建多类型列表
  • 一对多/多对多创建多类型布局
  • 添加头布局和脚布局
  • 点击(防抖动)/长按事件
  • 分组(展开折叠/递归层次/展开置顶/拖拽/侧滑/多类型/单一展开模式)
  • 悬停
  • 快速创建分割线/间隔(支持官方全部的LayoutManager)
  • 切换模式(例如切换编辑模式)
  • 选择模式(多选/单选/全选/取消全选/反选)
  • 拖拽位置
  • 侧滑删除
  • 下拉刷新(Refresh) | 上拉加载(LoadMore) | 下拉加载(UpFetch), 由SmartRefreshLayout实现
  • 预加载(Preload)
  • 列表缺省页, 由StateLayout实现
  • 自动分页加载列表数据
  • 可添加FlexboxLayoutManager实现Flexbox伸缩布局
  • 可添加Net(基于协程实现自动化的并发网络请求)实现自动化网络请求

安装

添加远程仓库根据创建项目的 Android Studio 版本有所不同

Android Studio Arctic Fox以下创建的项目 在项目根目录的 build.gradle 添加仓库

allprojects {
    repositories {
        // ...
        maven { url 'https://jitpack.io' }
    }
}

Android Studio Arctic Fox以上创建的项目 在项目根目录的 settings.gradle 添加仓库

dependencyResolutionManagement {
    repositories {
        // ...
        maven { url 'https://jitpack.io' }
    }
}

然后在 module 的 build.gradle 添加依赖框架

apply plugin: "kotlin-kapt"

android {
    //... 即使你不使用DataBinding也要打开其开关
    buildFeatures.dataBinding = true
}

dependencies {
    //...
    implementation 'com.github.liangjingkanji:BRV:1.3.56'
}

项目根目录中 gradle.properties 添加

android.enableJetifier=true
android.useAndroidX=true

License

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.