MCPcopy Index your code
hub / github.com/bingoogolapple/BGABaseAdapter-Android

github.com/bingoogolapple/BGABaseAdapter-Android @2.0.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release 2.0.1 ↗ · + Follow
559 symbols 1,292 edges 51 files 220 documented · 39%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

:running:BGABaseAdapter-Android:running:

目录

功能介绍

在 AdapterView 和 RecyclerView 中通用的 Adapter 和 ViewHolder。

  • [x] BGAAdapterViewAdapter 和 BGAViewHolderHelper 用于简化 AdapterView 的子类(如 ListView、GridView)的适配器的编写
  • [x] BGARecyclerViewAdapter 和 BGAViewHolderHelper 用于简化 RecyclerView 的适配器的编写,支持多 Item 类型,支持添加多个 Header 和 Footer,回调接口里的索引位置已经在库里处理了,不需要开发者自己减去 Header 个数
  • [x] BGADivider 用于简化 RecyclerView 分割线的编写,以及轻松实现基于 RecyclerView 的吸顶悬浮分类索引
  • [x] BGABindingRecyclerViewAdapter 和 BGABindingViewHolder 用于 RecyclerView 结合 DataBinding 使用时简化 RecyclerView 的适配器的编写,支持多 Item 类型,支持添加多个 Header 和 Footer,回调接口里的索引位置已经在库里处理了,不需要开发者自己减去 Header 个数
  • [x] BGARVVerticalScrollHelper 用于将 RecyclerView 滚动到指定位置

效果图与示例 apk

简化 GridView/ListView 适配器 RecyclerView/Header/Footer/拖拽排序
adapterview rv_and_rvbinding
RecyclerView 多 ItemType 吸顶分类索引
rv_multi_item sticky
仿美团外卖点餐界面左右联动
cascade

点击下载 BGABaseAdapterDemo.apk 或扫描下面的二维码安装

BGABaseAdapterDemo apk文件二维码

使用

Gradle 依赖

  • maven { url 'https://jitpack.io' } 添加到 root build.gradle 的 repositories 中
  • 在 app build.gradle 中添加如下依赖,末尾的「latestVersion」指的是徽章Download里的版本名称,请自行替换
implementation 'androidx.recyclerview:recyclerview:latestVersion'
implementation 'com.github.bingoogolapple:BGABaseAdapter-Android:latestVersion'

简化 AdapterView 的子类(如 ListView、GridView)的适配器的编写

AdapterViewAdapter.java

简化 RecyclerView 的适配器的编写

RvAdapter.java

RecyclerView 结合 DataBinding 使用时简化 RecyclerView 的适配器的编写

RvBindingFragment.java

BGADivider 用于简化 RecyclerView 分割线的编写,以及轻松实现基于 RecyclerView 的悬浮分类索引

RvStickyFragment.java

仿美团外卖点餐界面左右联动

RvCascadeFragment.java

代码是最好的老师,详细用法请查看 demo:feet:

感谢

关于我

个人主页 邮箱 BGA系列开源库QQ群
bingoogolapple.cn bingoogolapple@gmail.com BGA_CODE_CLUB

打赏支持

如果您觉得 BGA 系列开源库帮你节省了大量的开发时间,请扫描下方的二维码随意打赏,要是能打赏个 10.24 :monkey_face:就太:thumbsup:了。您的支持将鼓励我继续创作:octocat:

如果您目前正打算购买通往墙外的梯子,可以使用我的邀请码「YFQ9Q3B」购买 Lantern,双方都赠送三个月的专业版使用时间:beers:

License

Copyright 2015 bingoogolapple

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.

Extension points exported contracts — how you extend this code

BGAOnItemChildClickListener (Interface)
作者:王浩 邮件:bingoogolapple@gmail.com 创建时间:15/5/28 上午7:28 描述:AdapterView和RecyclerView的item中子控件点击事件监听器 [8 implementers]
library/src/main/java/cn/bingoogolapple/baseadapter/BGAOnItemChildClickListener.java
ApiEngine (Interface)
作者:王浩 邮件:bingoogolapple@gmail.com 创建时间:15/9/17 上午10:19 描述:
demo/src/main/java/cn/bingoogolapple/baseadapter/demo/engine/ApiEngine.java
BGAOnItemChildCheckedChangeListener (Interface)
作者:王浩 邮件:bingoogolapple@gmail.com 创建时间:15/10/7 下午8:35 描述:AdapterView和RecyclerView的item中子控件选中状态变化事件监听器 [6 implementers]
library/src/main/java/cn/bingoogolapple/baseadapter/BGAOnItemChildCheckedChangeListener.java
Delegate (Interface)
(no doc)
demo/src/main/java/cn/bingoogolapple/baseadapter/demo/ui/widget/IndexView.java
BGAOnItemChildLongClickListener (Interface)
作者:王浩 邮件:bingoogolapple@gmail.com 创建时间:15/5/28 上午7:28 描述:AdapterView和RecyclerView的item中子控件长按事件监听器 [6 implementers]
library/src/main/java/cn/bingoogolapple/baseadapter/BGAOnItemChildLongClickListener.java
BGAOnRVItemClickListener (Interface)
作者:王浩 邮件:bingoogolapple@gmail.com 创建时间:15/5/28 上午7:28 描述:RecyclerView的item点击事件监听器 [5 implementers]
library/src/main/java/cn/bingoogolapple/baseadapter/BGAOnRVItemClickListener.java
BGAOnRVItemLongClickListener (Interface)
作者:王浩 邮件:bingoogolapple@gmail.com 创建时间:15/5/28 上午7:28 描述:RecyclerView的item长按事件监听器 [2 implementers]
library/src/main/java/cn/bingoogolapple/baseadapter/BGAOnRVItemLongClickListener.java

Core symbols most depended-on inside this repo

show
called by 34
demo/src/main/java/cn/bingoogolapple/baseadapter/demo/util/ToastUtil.java
getItem
called by 31
demo/src/main/java/cn/bingoogolapple/baseadapter/demo/ui/activity/MainActivity.java
setText
called by 17
library/src/main/java/cn/bingoogolapple/baseadapter/BGAViewHolderHelper.java
getView
called by 16
library/src/main/java/cn/bingoogolapple/baseadapter/BGAViewHolderHelper.java
getHeadersCount
called by 15
library/src/main/java/cn/bingoogolapple/baseadapter/BGARecyclerViewAdapter.java
setVisibility
called by 13
library/src/main/java/cn/bingoogolapple/baseadapter/BGAViewHolderHelper.java
getItemCount
called by 12
library/src/main/java/cn/bingoogolapple/baseadapter/BGARecyclerViewAdapter.java
getHeadersCount
called by 11
library/src/main/java/cn/bingoogolapple/baseadapter/BGABindingRecyclerViewAdapter.java

Shape

Method 495
Class 51
Interface 11
Enum 2

Languages

Java100%

Modules by API surface

library/src/main/java/cn/bingoogolapple/baseadapter/BGADivider.java65 symbols
library/src/main/java/cn/bingoogolapple/baseadapter/BGARecyclerViewAdapter.java45 symbols
library/src/main/java/cn/bingoogolapple/baseadapter/BGABindingRecyclerViewAdapter.java40 symbols
library/src/main/java/cn/bingoogolapple/baseadapter/BGAViewHolderHelper.java39 symbols
demo/src/main/java/cn/bingoogolapple/baseadapter/demo/ui/fragment/RvBindingFragment.java34 symbols
demo/src/main/java/cn/bingoogolapple/baseadapter/demo/ui/fragment/RvFragment.java33 symbols
library/src/main/java/cn/bingoogolapple/baseadapter/BGAAdapterViewAdapter.java25 symbols
library/src/main/java/cn/bingoogolapple/baseadapter/BGAHeaderAndFooterAdapter.java21 symbols
library/src/main/java/cn/bingoogolapple/baseadapter/BGAEmptyView.java20 symbols
library/src/main/java/cn/bingoogolapple/baseadapter/BGARVVerticalScrollHelper.java19 symbols
demo/src/main/java/cn/bingoogolapple/baseadapter/demo/ui/fragment/MvcFragment.java17 symbols
demo/src/main/java/cn/bingoogolapple/baseadapter/demo/ui/fragment/RvCascadeFragment.java14 symbols

For agents

$ claude mcp add BGABaseAdapter-Android \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact