BGAAdapter

通用 Adapter 和 ViewHolder
授权协议 Apache 2.0
开发语言 Java
所属分类 手机/移动开发、 Android UI 组件
软件类型 开源软件
地区 国产
投 递 者 段干英杰
操作系统 Android
开源组织
适用人群 未知
 软件概览

在AdapterView和RecyclerView中通用的Adapter和ViewHolder,使AdapterView和RecyclerView适配器的使用方式基本一致。

效果图:

Image of 聊天布局Image of 城市列表索引Image of 滑动删除+拖拽排序Image of 基本使用

示例代码:

使用非常简单,这里展示一下ListView和RecyclerView实现qq聊天界面的适配器。

public class ListChatAdapter extends BGAAdapterViewAdapter<ChatModel> {

    public ListChatAdapter(Context context) {
        super(context, R.layout.item_chat);
    }

    /**
     * 为item的孩子节点设置监听器,并不是每一个数据列表都要为item的子控件添加事件监听器,所以在父类中采用了空实现,需要设置事件监听器时重写该方法即可
     *
     * @param viewHolderHelper
     */
    @Override
    protected void setItemChildListener(BGAViewHolderHelper viewHolderHelper) {
    }

    @Override
    public void fillData(BGAViewHolderHelper viewHolderHelper, int position, ChatModel model) {
        if (model.mUserType == ChatModel.UserType.From) {
            viewHolderHelper.setVisibility(R.id.rl_item_chat_to, View.GONE);
            viewHolderHelper.setVisibility(R.id.rl_item_chat_from, View.VISIBLE);
            String htmlMsg = String.format(mContext.getString(R.string.color_msg_from), model.mMsg);
            viewHolderHelper.setHtml(R.id.tv_item_chat_from_msg, htmlMsg);
        } else {
            viewHolderHelper.setVisibility(R.id.rl_item_chat_from, View.GONE);
            viewHolderHelper.setVisibility(R.id.rl_item_chat_to, View.VISIBLE);
            String htmlMsg = String.format(mContext.getString(R.string.color_msg_to), model.mMsg);
            viewHolderHelper.setHtml(R.id.tv_item_chat_to_msg, htmlMsg);
        }
    }

}
  • 功能介绍 在 AdapterView 和 RecyclerView 中通用的 Adapter 和 ViewHolder。  BGAAdapterViewAdapter 和 BGAViewHolderHelper 用于简化 AdapterView 的子类(如 ListView、GridView)的适配器的编写  BGARecyclerViewAdapter 和 BGAViewHolderHelper

 相关资料
  • 适配器模式充当两个不兼容接口之间的桥梁。 这种类型的设计模式属于结构模式,因为该模式结合了两个独立接口的功能。 此模式涉及单个类,它负责连接独立或不兼容接口的功能。 一个真实的例子可能是读卡器的情况,它充当存储卡和笔记本电脑之间的适配器。 将存储卡插入读卡器,将读卡器插入笔记本电脑,以便通过笔记本电脑读取存储卡。 适配器设计模式有助于将类一起工作。 它根据需求将类的接口转换为另一个接口。 该模式包

  • 问题内容: 我正在构建一个应用程序,以从后端服务器下载PDF文件。我写了以下代码: 在后端服务器上,方法如下: 我从我的适配器调用此rest方法为: 通话结束后,我从此服务获得以下响应: 如何解析此响应为PDF文件并将其显示给用户?当我使用以下代码从应用程序中简单地调用此适配器方法时,当我右键单击适配器并选择运行为“调用移动适配器”时,也会收到此响应: 我在浏览器的控制台上得到了相同的响应,但是正

  • 基本说明 canal 1.1.1版本之后, 增加客户端数据落地的适配及启动功能, 目前支持功能: 客户端启动器 同步管理REST接口 日志适配器, 作为DEMO 关系型数据库的数据同步(表对表同步), ETL功能 HBase的数据同步(表对表同步), ETL功能 (后续支持) ElasticSearch多表数据同步,ETL功能 环境版本 操作系统:无要求 java版本: jdk1.8 以上 can

  • 基本说明 canal 1.1.1版本之后, 增加客户端数据落地的适配及启动功能, 目前支持功能: 客户端启动器 同步管理REST接口 日志适配器, 作为DEMO HBase的数据同步(表对表同步), ETL功能 (后续支持) ElasticSearch多表数据同步,ETL功能 环境版本 操作系统:无要求 java版本: jdk1.8 以上 canal 版本: 请下载最新的安装包,本文以当前v1.1

  • Ember Django Adapter Ember Data is a core Ember.js library that provides a store and ORM for workingwith your Ember models. Ember Data works with JSON API out of the box, however"Ember Data is designe

  • Ember Data GraphQL Adapter A Ember CLI adapter for using GraphQL with Ember Data. Installation ember install ember-graphql-adapter Usage Create your adapter first // app/adapters/post.jsimport GraphQL