- 浏览: 842579 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
renzhengzhi:
请教一下楼主,公有云和私有云的开发,具体要做哪些工作呢?我拿到 ...
4,云的4 种模式 -
SangBillLee:
我用了solr5.5,用SolrQuery查询,没法高亮,不知 ...
solr5.x快速入门 -
lw900925:
这翻译读起来真是别扭。
solr in action翻译-第一章1.1 -
springjpa_springmvc:
spring mvc demo教程源代码下载,地址:http: ...
Spring MVC性能提升 -
h416373073:
正遇到了此问题不知如何解决, 多谢分享
solr错误
转载自:中国手机开发网
一、结构
public abstract class BaseExpandableListAdapter extends Object implements ExpandableListAdapter, HeterogeneousExpandableList
直接子类:CursorTreeAdapter,SimpleExpandableListAdapter
间接子类:ResourceCursorTreeAdapter, SimpleCursorTreeAdapter
二、概述
BaseExpandableListAdapter是ExpandableListAdapter的抽象基类,从一些数据中提供数据和视图给可折叠列表视图。
所有继承本类的Adapters需要保证实现的getCombinedChildId(long, long)和 getCombinedGroupId(long)方法能正确地从View组或View子元素的ID中生成唯一的ID号。
(译者注:组元素表示可折叠的列表项,子元素表示列表项展开后看到的多个子元素项。由于可折叠列表单纯寻找组元素和子元素的ID不是很方便,因此使用联合ID的方式来解决。于是有了getCombinedChildId()和getCombinedGroupId()方法。在andorid自带的ApiDomos的例子中有这个的代码:App/View/ExpandableList1)。
三、公共方法
public boolean areAllItemsEnabled ()是否启用所有元素。
public int getChildType (int groupPosition, int childPosition)获取由getChildView(int, int, boolean, View, ViewGroup)方法创建的指定子元素类型。参数:groupPosition 子元素所在的组位置,childPosition 子元素所在的位置。返回值:0表示任意一个子元素类型,因此此时应当只声明一种子元素类型。
public int getChildTypeCount()获取由getChildView(int, int, boolean, View,ViewGroup)创建的所有子元素类型个数。每种类型表示一个能被getChildView(int, int, boolean, View, ViewGroup)转换的(任意组中的)View集合。如果适配器总是从所有的子元素中返回同一种类型,本方法将返回1。本方法将仅仅在AdapterView设置适配器时被调用。返回值:BaseExpandableListAdapter默认返回1。
public long getCombinedChildId (long groupId, long childId)若你预见以下默认实现的IDs可能出现冲突,请重写本方法。实现返回一个long型:第0位:不管ID指向的是一个子元素(未设置)还是一个组(已设置),对于本方法bit值为1,第1-31位:小于31位的组ID,第32-63位:小于32位的子元素ID;返回列表所有项(组或子项)中唯一的(和可能稳定)的子元素ID号。从列表所有项(组或子项)中获得一个唯一的子ID号。可折叠列表要求每个元素(组或子项)在所有的子元素和组中有一个唯一的ID。本方法负责根据所给的子ID号和组ID号返回唯一的ID。此外,若hasStableIds()是true,那么必须要返回稳定的ID。参数:groupID 包含该子元素的组ID,childID 子元素的ID号。
public long getCombinedGroupId (long groupId)若你预见以下默认实现产生IDs冲突的话,请重写本方法。实现返回一个long型:第0位:不管ID指向的是一个子元素(未设置)还是一个组(已设置),对于本方法bit值为1,第1-31位:小于31位的组ID,第32-63位:小于32位的子元素ID;返回列表所有项(组或子项)中唯一的(和可能稳定)的子元素ID号。从列表所有项(组或子项)中获得一个唯一的子ID号。可折叠列表要求每个元素(组或子项)在所有的子元素和组中有一个唯一的ID。本方法负责根据所给的子ID号和组ID号返回唯一的ID。此外,若hasStableIds()是true,那么必须要返回稳定的ID。参数:groupID 包含该子元素的组ID。返回
public int getGroupType (int groupPosition)获得由getGroupView(int, boolean, View, ViewGroup)方法创建的组元素类型。为设置的组元素。参数:groupPosition 应返回类型所在组的位置。返回:0表示任意组位置,因此此时应当只申明了一种组类型。
public int getGroupTypeCount ()返回由getGroupView(int, boolean, View, ViewGroup)方法创建的组视图类型个数。每个类型表示一个能被getGroupView(int, boolean, View, ViewGroup)转换的View集合。如果适配器总是返回同一种组类型,则此时本方法将返回1。本方法将仅当适配器被AdapterView设置时调用。返回:BaseExpandableListAdapter默认返回1.
public boolean isEmpty ()(译者注:如果适配器没有任何数据,返回真。参见:Adapter)
public void notifyDataSetChanged ()(译者注:当后台数据集发生改变时,调用此方法响应数据集的更改。)参见:notifyChanged()
public void notifyDataSetInvalidated ()(译者注:当后台数据集不被验证的时候,调用此方法。)参见:notifyInvalidated()
public void onGroupCollapsed (int groupPosition)当组折叠的时候被调用。参数:groupPosition 要折叠的组所在位置
public void onGroupExpanded (int groupPosition)当组展开的时候被调用。参数:groupPosition 要折叠的组所在位置
public void registerDataSetObserver (DataSetObserver observer)(译者注:注册当用该适配器修改数据时调用的观察器。)
public void unregisterDataSetObserver (DataSetObserver observer)(译者注:注销之前通过 registerDataSetObserver(DataSetObserver) 方法注册到该适配器的观察器。)
发表评论
-
Android SDK更新 Connection to http://dl-ssl.google.com refused 解决方法 .
2013-10-10 11:38 1217问题描述使用SDK Manager ... -
android 对话框中的进度条 (ProgressDialog)
2012-03-10 00:16 2598显然要定义对话框进 ... -
Android开发学习笔记WebView
2012-02-28 21:59 5152WebView(网络视图)能加载 ... -
Android ListView理解之BaseAdapter .
2012-02-28 21:43 2075ListView是Android开发过程中较为常见的组件之一, ... -
AsyncTask的用法
2012-02-27 21:36 910在开发Android应用时必须遵守单线程模型的原则: An ... -
android中的ellipsize
2012-02-26 17:47 1096最近为了解决某个bug,textview中内容过长的话自动 ... -
使用命令安装apk的方法
2012-02-26 15:44 1716使用命令安装apk的方法, 第一步,将应用防止在androi ... -
Android PendingIntent和Intent的区别
2012-02-16 22:39 1767以前在学习AlarmManager里面会遇到PendingI ... -
android中gallery的使用
2012-02-13 22:52 25331,创建配置文件 <?xml version=&quo ... -
android的tabHost的使用
2012-02-13 22:10 1590废话不多,直接介绍怎么使用 1,用几个tab,就建立几个ta ... -
android源码解析之二ApplicaitonInfo和PackageManager
2012-02-07 13:26 2293ApplicationInfo ApplicationIn ... -
android源码解读一(Context)
2012-02-05 21:13 4272Context类 Context是一个抽象类 public ... -
android 属性android:visibility
2012-02-05 12:16 982此属性意思是此视图是否显示, 例如RelativeLayou ... -
android默认焦点设置的方法
2012-02-05 12:13 18996在使用到文本框(EditText)来进行数据录入的时候,有时默 ... -
imageView.setScaleType
2012-02-03 17:36 6053imageView.setScaleType(ImageVie ... -
文件在SD卡存储
2012-02-02 10:47 1807手机的存储空间分俩种,一种是手机自带的,另一种是SD卡,(外存 ... -
广播接收者
2012-02-02 10:45 1235广播接受者(BroadcastReceiv ... -
android的服务
2012-02-02 10:45 1019服务android中服务和window中的服务是类似的东西,服 ... -
android资源的应用
2012-02-02 10:43 1479color颜色在配置文件中定义路径:res/values/co ... -
android图片的旋转和缩放
2012-02-02 10:42 1754使用Android中的Matrix类实现 //加载需要操 ...
相关推荐
本示例"可扩展listview demo BaseExpandableListAdapter"将详细讲解如何使用`BaseExpandableListAdapter`来实现一个功能完善的可扩展ListView。 首先,我们需要理解`ExpandableListView`的工作原理。它扩展了`...
在Android开发中,`BaseExpandableListAdapter`是一个用于创建可扩展列表视图(ExpandableListView)的数据适配器。这个适配器允许开发者构建复杂的列表结构,其中包含可展开和折叠的组(groups),每个组内又包含多...
NULL 博文链接:https://xieruilin.iteye.com/blog/726494
// 实现BaseExpandableListAdapter的方法,如getGroupCount(), getChildrenCount(), getGroup(), getChild()等 @Override public View getGroupView(int groupPosition, boolean isExpanded, View convertView, ...
接下来,我们需要扩展`BaseExpandableListAdapter`,在适配器中处理单选逻辑。在`getChildView()`方法中,根据`ChildItem`的`isSelected`属性来设置子项的选中状态,如改变文字颜色或背景色。同时,监听点击事件,当...
2. **监听器重写**:在适配器(BaseExpandableListAdapter)中,我们需要重写getView()方法,为每个item设置滑动手势监听器。监听器可以是自定义的,也可以使用库如SwipeToDismiss或SwipeRefreshLayout提供的现成...
本篇将详细介绍如何在MonoAndroid环境下,使用C#语言来创建和填充`ExpandableListView`,以及如何自定义`BaseExpandableListAdapter`的子类。 首先,我们需要了解`ExpandableListView`的基本概念。`...
通常,我们会先通过`findViewById()`方法获取到布局中的ExpandableListView实例,然后创建一个自定义的Adapter,如`EListAdapter`,该Adapter继承自`BaseExpandableListAdapter`。Adapter的构造函数接收数据源(通常...
本示例"listview_Demo"主要探讨的是如何使用`BaseExpandableListAdapter`来实现一个可展开和收缩的ListView,这在展示层级结构数据时非常有用。 `BaseExpandableListAdapter`是Android提供的一个抽象适配器类,它是...
在这个场景下,`BaseExpandableListAdapter`扮演了至关重要的角色,它是适配ExpandableListView的数据驱动器,负责将数据模型绑定到视图上。 `BaseExpandableListAdapter`是Android提供的一个抽象类,它是实现...
本教程将深入探讨如何通过扩展`BaseExpandableListAdapter`来实现自定义的`ExpandableAdapter`。 首先,`BaseExpandableListAdapter`是Android提供的一个抽象类,它是`ExpandableListAdapter`接口的默认实现,提供...
在Android开发中,深入理解关键组件和概念是至关重要的,这里我们将详细探讨`LayoutInflater`、`ImageButton`以及`BaseExpandableListAdapter`这三个Android核心组件。 首先,`LayoutInflater`是Android框架中一个...
在Android应用开发中,"ExpandableListAdapter+CheckBox实现购物车"是一个常见的功能需求,它涉及到数据展示、用户交互以及状态管理等多个方面的知识点。下面将详细解释这个主题。 首先,`ExpandableListAdapter`是...
在Android中实现二级列表,通常会用到`BaseExpandableListAdapter`这个自定义适配器,它是Android SDK提供的用于处理可扩展列表视图(ExpandableListView)的基础类。 `BaseExpandableListAdapter`是`...
本实例"android好友列表的一个实例"聚焦于如何使用`BaseExpandableListAdapter`来实现这样一个功能,同时实现了资源的高效复用,确保了应用的性能和用户体验。 首先,`BaseExpandableListAdapter`是Android提供的一...