public class ExpandableListView
extends ListView
java.lang.Object | ||||||
↳ | android.view.View | |||||
↳ | android.view.ViewGroup | |||||
↳ | android.widget.AdapterView<android.widget.ListAdapter> | |||||
↳ | android.widget.AbsListView | |||||
↳ | android.widget.ListView | |||||
↳ | android.widget.ExpandableListView |
显示垂直滚动两级列表中的项目的视图。 这与ListView
不同,允许两个级别:可以单独展开以展示其子女的组。 这些项目来自与此视图相关的ExpandableListAdapter
。
展开式列表能够在每个项目旁边显示一个指示符,以显示项目的当前状态(这些状态通常是扩展组,折叠组,子项或最后一个子项之一)。 使用setChildIndicator(Drawable)
或setGroupIndicator(Drawable)
(或相应的XML属性)来设置这些指标(请参阅每种方法的文档以查看每个Drawable可以具有的附加状态)。 ExpandableListView
的默认样式提供的指示符将显示在ExpandableListView
视图ExpandableListView
。 布局android.R.layout.simple_expandable_list_item_1和android.R.layout.simple_expandable_list_item_2(应该与SimpleCursorTreeAdapter
一起使用)包含指标的首选位置信息。
由 ExpandableListView
设置的上下文菜单信息将是 ExpandableListView.ExpandableListContextMenuInfo
对象,其中 packedPosition
是可用于 getPackedPositionType(long)
和其他类似方法的打包位置。
注意:如果父级的大小也没有严格指定(例如,如果父级是ScrollView,则无法指定wrap_content,因为它也可以是任意长度),所以对于XML中的ExpandableListView的 android:layout_height
属性,不能使用 wrap_content
的值 wrap_content
,如果ExpandableListView父级具有特定大小(如100像素),则可以使用wrap_content。
Nested classes |
|
---|---|
class |
ExpandableListView.ExpandableListContextMenuInfo 当 |
interface |
ExpandableListView.OnChildClickListener 当此可扩展列表中的某个子项被点击时,将调用回调的接口定义。 |
interface |
ExpandableListView.OnGroupClickListener 当此可扩展列表中的组已被点击时,将调用回调的接口定义。 |
interface |
ExpandableListView.OnGroupCollapseListener 用于在组崩溃时收到通知 |
interface |
ExpandableListView.OnGroupExpandListener 用于在组展开时收到通知 |
XML attributes |
|
---|---|
android:childDivider |
Drawable or color that is used as a divider for children. |
android:childIndicator |
Indicator shown beside the child View. |
android:childIndicatorEnd |
The end bound for a child's indicator. |
android:childIndicatorLeft |
The left bound for a child's indicator. |
android:childIndicatorRight |
The right bound for a child's indicator. |
android:childIndicatorStart |
The start bound for a child's indicator. |
android:groupIndicator |
Indicator shown beside the group View. |
android:indicatorEnd |
The end bound for an item's indicator. |
android:indicatorLeft |
The left bound for an item's indicator. |
android:indicatorRight |
The right bound for an item's indicator. |
android:indicatorStart |
The start bound for an item's indicator. |
Inherited XML attributes |
|
---|---|
From class android.widget.ListView
|
|
From class android.widget.AbsListView
|
|
From class android.view.ViewGroup
|
|
From class android.view.View
|
Constants |
|
---|---|
int |
CHILD_INDICATOR_INHERIT 表示何时子指示符应该从通用指示符边界继承此边界 |
int |
PACKED_POSITION_TYPE_CHILD 包装的位置代表一个孩子。 |
int |
PACKED_POSITION_TYPE_GROUP 打包的位置代表一个组。 |
int |
PACKED_POSITION_TYPE_NULL 打包的位置表示既非/空/无优先。 |
long |
PACKED_POSITION_VALUE_NULL 包装位置的值不表示/ null /无偏好。 |
Inherited constants |
---|
From class android.widget.AbsListView
|
From class android.widget.AdapterView
|
From class android.view.ViewGroup
|
From class android.view.View
|
Inherited fields |
---|
From class android.view.View
|
Public constructors |
|
---|---|
ExpandableListView(Context context) |
|
ExpandableListView(Context context, AttributeSet attrs) |
|
ExpandableListView(Context context, AttributeSet attrs, int defStyleAttr) |
|
ExpandableListView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) |
Public methods |
|
---|---|
boolean |
collapseGroup(int groupPos) 在分组列表视图中折叠组 |
boolean |
expandGroup(int groupPos) 在分组列表视图中展开一个组 |
boolean |
expandGroup(int groupPos, boolean animate) 在分组列表视图中展开一个组 |
CharSequence |
getAccessibilityClassName() 返回此对象的类名称以用于辅助功能。 |
ListAdapter |
getAdapter() 不应使用此方法,请使用 |
ExpandableListAdapter |
getExpandableListAdapter() 获取为此视图提供数据的适配器。 |
long |
getExpandableListPosition(int flatListPosition) 将平面列表位置(列表中的项目(子项或组)的原始位置)转换为组和/或子位置(以打包位置表示)。 |
int |
getFlatListPosition(long packedPosition) 将组和/或子位置转换为平面列表位置。 |
static int |
getPackedPositionChild(long packedPosition) 从 |
static long |
getPackedPositionForChild(int groupPosition, int childPosition) 返回小孩位置的打包位置表示。 |
static long |
getPackedPositionForGroup(int groupPosition) 返回组位置的打包位置表示。 |
static int |
getPackedPositionGroup(long packedPosition) 从打包的位置获取组的位置。 |
static int |
getPackedPositionType(long packedPosition) 获取打包位置的类型。 |
long |
getSelectedId() 获取当前选定的组或子项的ID。 |
long |
getSelectedPosition() 获取当前选定的组或子的位置(以及其类型)。 |
boolean |
isGroupExpanded(int groupPosition) 该给定的组是否正在扩展。 |
void |
onRestoreInstanceState(Parcelable state) 挂钩允许视图重新应用以前由 |
void |
onRtlPropertiesChanged(int layoutDirection) 当任何RTL属性(布局方向或文本方向或文本对齐)已被更改时调用。 |
Parcelable |
onSaveInstanceState() 钩子允许视图生成其内部状态的表示,稍后可用于创建具有相同状态的新实例。 |
boolean |
performItemClick(View v, int position, long id) 调用OnItemClickListener(如果已定义)。 |
void |
setAdapter(ListAdapter adapter) 不应使用此重载的方法,而应使用 |
void |
setAdapter(ExpandableListAdapter adapter) 将提供数据的适配器设置为此视图。 |
void |
setChildDivider(Drawable childDivider) 设置将绘制在列表中每个孩子旁边的drawable。 |
void |
setChildIndicator(Drawable childIndicator) 设置要在孩子旁边绘制的指标。 |
void |
setChildIndicatorBounds(int left, int right) 设置子指示器的绘图边界。 |
void |
setChildIndicatorBoundsRelative(int start, int end) 设置子指示符的相对绘图边界。 |
void |
setGroupIndicator(Drawable groupIndicator) 设置要在组旁边绘制的指标。 |
void |
setIndicatorBounds(int left, int right) 设置指标的绘图边界(至少,组指标受此影响;如果子指标边界设置为继承,子指标受此影响)。 |
void |
setIndicatorBoundsRelative(int start, int end) 设置指标的相对绘图边界(至少,组指标受此影响;如果子指标边界设置为继承,则子指标受此影响)。 |
void |
setOnChildClickListener(ExpandableListView.OnChildClickListener onChildClickListener) |
void |
setOnGroupClickListener(ExpandableListView.OnGroupClickListener onGroupClickListener) |
void |
setOnGroupCollapseListener(ExpandableListView.OnGroupCollapseListener onGroupCollapseListener) |
void |
setOnGroupExpandListener(ExpandableListView.OnGroupExpandListener onGroupExpandListener) |
void |
setOnItemClickListener(AdapterView.OnItemClickListener l) 当单击一个项目并且调用者倾向于接收ListView风格的位置而不是组和/或子位置时,注册要调用的回调。 |
boolean |
setSelectedChild(int groupPosition, int childPosition, boolean shouldExpandGroup) 将选择设置为指定的子项。 |
void |
setSelectedGroup(int groupPosition) 将选择设置为指定的组。 |
Protected methods |
|
---|---|
void |
dispatchDraw(Canvas canvas) 通过绘制来绘制子视图。 |
Inherited methods |
|
---|---|
From class android.widget.ListView
|
|
From class android.widget.AbsListView
|
|
From class android.widget.AdapterView
|
|
From class android.view.ViewGroup
|
|
From class android.view.View
|
|
From class java.lang.Object
|
|
From interface android.text.TextWatcher
|
|
From interface android.view.ViewTreeObserver.OnGlobalLayoutListener
|
|
From interface android.widget.Filter.FilterListener
|
|
From interface android.view.ViewTreeObserver.OnTouchModeChangeListener
|
|
From interface android.view.ViewParent
|
|
From interface android.view.ViewManager
|
|
From interface android.graphics.drawable.Drawable.Callback
|
|
From interface android.view.KeyEvent.Callback
|
|
From interface android.view.accessibility.AccessibilityEventSource
|
用作儿童分隔线的可绘制或颜色。 (它将在子项目的下方和上方绘制)。其高度将与正常列表项目分隔线的高度相同。
可能是另一种资源的引用,其形式为“ @[+][package:]type:name
”,或者其形式为“一个主题属性 ?[package:][type:]name
”。
颜色值可以是“ #rgb
”,“ #argb
”,“ #rrggbb
”或“ #aarrggbb
”的形式。
这对应于全局属性资源符号 childDivider
。
指示器显示在儿童视图旁边。 这可以是一个有状态的Drawable。
必须是另一个资源的引用,其形式为“ @[+][package:]type:name
”,或者其形式为“一个主题属性 ?[package:][type:]name
”。
这对应于全局属性资源符号 childIndicator
。
结束一个孩子的指标。
必须是维度值,这是一个浮点数,后面跟着一个单位,例如“ 14.5sp
”。 可用单位为:px(像素),dp(密度独立像素),sp(基于首选字体大小的缩放像素),单位为英寸,毫米(毫米)。
这也可能是对包含此类型值的资源(形式为“ @[package:]type:name
”)或主题属性(形式为“ ?[package:][type:]name
”)的 ?[package:][type:]name
。
这对应于全局属性资源符号 childIndicatorEnd
。
儿童指标的左边界。
必须是一个维度值,这是一个浮点数,后面跟着一个单位,例如“ 14.5sp
”。 可用单位为:px(像素),dp(密度独立像素),sp(基于首选字体大小的缩放像素),单位为英寸,毫米(毫米)。
这也可能是对包含此类型值的资源(形式为“ @[package:]type:name
”)或主题属性(形式为“ ?[package:][type:]name
”)的 ?[package:][type:]name
。
这对应于全局属性资源符号 childIndicatorLeft
。
儿童指标的正确界限。
必须是尺寸值,这是一个浮点数,后面跟着一个单位,例如“ 14.5sp
”。 可用单位为:px(像素),dp(密度独立像素),sp(基于首选字体大小的缩放像素),单位为英寸,毫米(毫米)。
这也可能是对包含此类型值的资源(形式为“ @[package:]type:name
”)或主题属性(形式为“ ?[package:][type:]name
”)的 ?[package:][type:]name
。
这对应于全局属性资源符号 childIndicatorRight
。
一个孩子的指标开始。
必须是尺寸值,这是一个浮点数,后面跟着一个单位,例如“ 14.5sp
”。 可用单位为:px(像素),dp(密度独立像素),sp(基于首选字体大小的缩放像素),单位为英寸,毫米(毫米)。
这也可能是对包含此类型值的资源(形式为“ @[package:]type:name
”)或主题属性(形式为“ ?[package:][type:]name
”)的 ?[package:][type:]name
。
这对应于全局属性资源符号 childIndicatorStart
。
指示器显示在组视图旁边。 这可以是一个有状态的Drawable。
必须是另一个资源的引用,其形式为“ @[+][package:]type:name
”,或者其形式为“一个主题属性 ?[package:][type:]name
”。
这对应于全局属性资源符号 groupIndicator
。
项目指标的结束界限。 要指定特定于儿童的右边界,请使用childIndicatorEnd。
必须是一个维度值,这是一个浮点数,后面跟着一个单位,例如“ 14.5sp
”。 可用单位为:px(像素),dp(密度独立像素),sp(基于首选字体大小的缩放像素),单位为英寸,毫米(毫米)。
这也可能是对包含此类型值的资源(格式为“ @[package:]type:name
”)或主题属性(格式为“ ?[package:][type:]name
”)的 ?[package:][type:]name
。
这对应于全局属性资源符号 indicatorEnd
。
项目指标的左边界。 要指定特定于儿童的左边界,请使用childIndicatorLeft。
必须是尺寸值,这是一个浮点数,后面跟着一个单位,例如“ 14.5sp
”。 可用单位为:px(像素),dp(密度独立像素),sp(基于首选字体大小的缩放像素),单位为英寸,毫米(毫米)。
这也可能是对包含此类型值的资源(格式为“ @[package:]type:name
”)或主题属性(格式为“ ?[package:][type:]name
”)的 ?[package:][type:]name
。
这对应于全局属性资源符号 indicatorLeft
。
项目指标的右侧界限。 要指定特定于儿童的右边界,请使用childIndicatorRight。
必须是一个维度值,这是一个浮点数,后面跟着一个单位,例如“ 14.5sp
”。 可用单位为:px(像素),dp(密度独立像素),sp(基于首选字体大小的缩放像素),单位为英寸,毫米(毫米)。
这也可能是对包含此类型值的资源(形式为“ @[package:]type:name
”)或主题属性(形式为“ ?[package:][type:]name
”)的 ?[package:][type:]name
。
这对应于全局属性资源符号 indicatorRight
。
项目指标的起始界限。 要指定特定于儿童的开始边界,请使用childIndicatorStart。
必须是一个维度值,它是一个浮点数,并附有一个单位,例如“ 14.5sp
”。 可用单位为:px(像素),dp(密度独立像素),sp(基于首选字体大小的缩放像素),单位为英寸,毫米(毫米)。
这也可能是对包含此类型值的资源(形式为“ @[package:]type:name
”)或主题属性(形式为“ ?[package:][type:]name
”)的 ?[package:][type:]name
。
这对应于全局属性资源符号 indicatorStart
。
int CHILD_INDICATOR_INHERIT
表示何时子指示符应该从通用指示符边界继承此边界
常量值:-1(0xffffffff)
int PACKED_POSITION_TYPE_CHILD
包装的位置代表一个孩子。
常数值:1(0x00000001)
int PACKED_POSITION_TYPE_GROUP
打包的位置代表一个组。
常量值:0(0x00000000)
int PACKED_POSITION_TYPE_NULL
打包的位置表示既非/空/无优先。
常量值:2(0x00000002)
long PACKED_POSITION_VALUE_NULL
包装位置的值不表示/ null /无偏好。 由于组类型(第一位0)不应该填充子位置,因此该值不是可能的。
常量值:4294967295(0x00000000ffffffff)
ExpandableListView (Context context)
Parameters | |
---|---|
context |
Context
|
ExpandableListView (Context context, AttributeSet attrs)
Parameters | |
---|---|
context |
Context
|
attrs |
AttributeSet
|
ExpandableListView (Context context, AttributeSet attrs, int defStyleAttr)
Parameters | |
---|---|
context |
Context
|
attrs |
AttributeSet
|
defStyleAttr |
int
|
ExpandableListView (Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes)
Parameters | |
---|---|
context |
Context
|
attrs |
AttributeSet
|
defStyleAttr |
int
|
defStyleRes |
int
|
boolean collapseGroup (int groupPos)
在分组列表视图中折叠组
Parameters | |
---|---|
groupPos |
int : position of the group to collapse |
Returns | |
---|---|
boolean |
True if the group was collapsed, false otherwise (if the group was already collapsed, this will return false) |
boolean expandGroup (int groupPos)
在分组列表视图中展开一个组
Parameters | |
---|---|
groupPos |
int : the group to be expanded |
Returns | |
---|---|
boolean |
True if the group was expanded, false otherwise (if the group was already expanded, this will return false) |
boolean expandGroup (int groupPos, boolean animate)
在分组列表视图中展开一个组
Parameters | |
---|---|
groupPos |
int : the group to be expanded |
animate |
boolean : true if the expanding group should be animated in |
Returns | |
---|---|
boolean |
True if the group was expanded, false otherwise (if the group was already expanded, this will return false) |
CharSequence getAccessibilityClassName ()
返回此对象的类名称以用于辅助功能。 如果子类正在实现的东西应该被视为一个全新的视图类,当它被可访问性使用时,子类只应该覆盖这个子类,与它所源自的类无关。 这用于填写AccessibilityNodeInfo.setClassName
。
Returns | |
---|---|
CharSequence |
ListAdapter getAdapter ()
不应使用此方法,请使用 getExpandableListAdapter()
。
Returns | |
---|---|
ListAdapter |
The adapter currently used to display data in this ListView. |
ExpandableListAdapter getExpandableListAdapter ()
获取为此视图提供数据的适配器。
Returns | |
---|---|
ExpandableListAdapter |
The adapter that provides data to this view. |
long getExpandableListPosition (int flatListPosition)
将平面列表位置(列表中的项目(子项或组)的原始位置)转换为组和/或子位置(以打包位置表示)。 这在调用者需要使用底层ListView
的方法的情况下非常有用。 使用getPackedPositionType(long)
, getPackedPositionChild(long)
, getPackedPositionGroup(long)
解压。
Parameters | |
---|---|
flatListPosition |
int : The flat list position to be converted. |
Returns | |
---|---|
long |
The group and/or child position for the given flat list position in packed position representation. #PACKED_POSITION_VALUE_NULL if the position corresponds to a header or a footer item. |
int getFlatListPosition (long packedPosition)
将组和/或子位置转换为平面列表位置。 这在调用者需要使用底层ListView
的方法的情况下非常有用。
Parameters | |
---|---|
packedPosition |
long : The group and/or child positions to be converted in packed position representation. Use getPackedPositionForChild(int, int) or getPackedPositionForGroup(int) . |
Returns | |
---|---|
int |
The flat list position for the given child or group. |
int getPackedPositionChild (long packedPosition)
从PACKED_POSITION_TYPE_CHILD
类型的打包位置获取子位置(使用getPackedPositionType(long)
)。 要获得此小孩所属的小组,请使用getPackedPositionGroup(long)
。 见getPackedPositionForChild(int, int)
。
Parameters | |
---|---|
packedPosition |
long : The packed position from which the child position will be returned. |
Returns | |
---|---|
int |
The child position portion of the packed position. If this does not contain a child, returns -1. |
long getPackedPositionForChild (int groupPosition, int childPosition)
返回小孩位置的打包位置表示。
一般来说,在ExpandableListAdapter
或ExpandableListView
方法给出/返回的位置可以是儿童或组的情况下,应使用打包位置。 这两个位置被打包成一个单一的长,这可以使用解压getPackedPositionChild(long)
, getPackedPositionGroup(long)
,和getPackedPositionType(long)
。
Parameters | |
---|---|
groupPosition |
int : The child's parent group's position. |
childPosition |
int : The child position within the group. |
Returns | |
---|---|
long |
The packed position representation of the child (and parent group). |
long getPackedPositionForGroup (int groupPosition)
返回组位置的打包位置表示。 见getPackedPositionForChild(int, int)
。
Parameters | |
---|---|
groupPosition |
int : The child's parent group's position. |
Returns | |
---|---|
long |
The packed position representation of the group. |
int getPackedPositionGroup (long packedPosition)
从打包的位置获取组的位置。 见getPackedPositionForChild(int, int)
。
Parameters | |
---|---|
packedPosition |
long : The packed position from which the group position will be returned. |
Returns | |
---|---|
int |
The group position portion of the packed position. If this does not contain a group, returns -1. |
int getPackedPositionType (long packedPosition)
获取打包位置的类型。 见getPackedPositionForChild(int, int)
。
Parameters | |
---|---|
packedPosition |
long : The packed position for which to return the type. |
Returns | |
---|---|
int |
The type of the position contained within the packed position, either PACKED_POSITION_TYPE_CHILD , PACKED_POSITION_TYPE_GROUP , or PACKED_POSITION_TYPE_NULL . |
long getSelectedId ()
获取当前选定的组或子项的ID。 如果没有选择,可以返回-1。
Returns | |
---|---|
long |
The ID of the currently selected group or child. -1 if no selection. |
long getSelectedPosition ()
获取当前选定的组或子的位置(以及其类型)。 如果没有选择,可以返回PACKED_POSITION_VALUE_NULL
。
Returns | |
---|---|
long |
A packed position containing the currently selected group or child's position and type. #PACKED_POSITION_VALUE_NULL if no selection or if selection is on a header or a footer item. |
boolean isGroupExpanded (int groupPosition)
该给定的组是否正在扩展。
Parameters | |
---|---|
groupPosition |
int : The group to check. |
Returns | |
---|---|
boolean |
Whether the group is currently expanded. |
void onRestoreInstanceState (Parcelable state)
吊钩允许视图重新应用以前由onSaveInstanceState()
生成的内部状态的表示。 这个函数永远不会被调用为null状态。
Parameters | |
---|---|
state |
Parcelable : The frozen state that had previously been returned by onSaveInstanceState() . |
void onRtlPropertiesChanged (int layoutDirection)
当任何RTL属性(布局方向或文本方向或文本对齐)已被更改时调用。 子类需要重写此方法以处理依赖于已解析布局方向的缓存信息,或通知继承其布局方向的子视图。 默认实现什么都不做。
Parameters | |
---|---|
layoutDirection |
int : the direction of the layout |
Parcelable onSaveInstanceState ()
钩子允许视图生成其内部状态的表示,稍后可用于创建具有相同状态的新实例。 此状态应仅包含不持久或以后不能重建的信息。 例如,您永远不会将当前位置存储在屏幕上,因为当视图的新实例放置在其视图层次结构中时会再次计算该位置。
您可能在此处存储的某些示例:文本视图中的当前光标位置(但通常不是文本本身,因为它存储在内容提供程序或其他永久性存储中),即当前在列表视图中选择的项目。
Returns | |
---|---|
Parcelable |
Returns a Parcelable object containing the view's current dynamic state, or null if there is nothing interesting to save. The default implementation returns null. |
boolean performItemClick (View v, int position, long id)
调用OnItemClickListener(如果已定义)。 执行与点击相关的所有常规操作:报告辅助功能事件,播放声音等。
Parameters | |
---|---|
v |
View : The view within the AdapterView that was clicked. |
position |
int : The position of the view in the adapter. |
id |
long : The row id of the item that was clicked. |
Returns | |
---|---|
boolean |
True if there was an assigned OnItemClickListener that was called, false otherwise is returned. |
void setAdapter (ListAdapter adapter)
不应使用此重载方法,而应使用 setAdapter(ExpandableListAdapter)
。
设置此ListView背后的数据。 传递给此方法的适配器可能由WrapperListAdapter
包装,具体取决于当前正在使用的ListView功能。 例如,添加页眉和/或页脚将导致适配器被包装。
Parameters | |
---|---|
adapter |
ListAdapter : The ListAdapter which is responsible for maintaining the data backing this list and for producing a view to represent an item in that data set. |
void setAdapter (ExpandableListAdapter adapter)
将提供数据的适配器设置为此视图。
Parameters | |
---|---|
adapter |
ExpandableListAdapter : The adapter that provides data to this view. |
void setChildDivider (Drawable childDivider)
设置将绘制在列表中每个孩子旁边的drawable。 这将使用与普通分隔线( setDivider(Drawable)
)相同的高度绘制,或者如果它没有固有高度,则高度由setDividerHeight(int)
设置。
Parameters | |
---|---|
childDivider |
Drawable : The drawable to use. |
void setChildIndicator (Drawable childIndicator)
设置要在孩子旁边绘制的指标。
Parameters | |
---|---|
childIndicator |
Drawable : The drawable to be used as an indicator. If the child is the last child for a group, the state state_last will be set. |
void setChildIndicatorBounds (int left, int right)
设置子指示器的绘图边界。 对于其中的任何一种,您都可以指定CHILD_INDICATOR_INHERIT
以使用通用指标的边界继承。
Parameters | |
---|---|
left |
int : The left position (relative to the left bounds of this View) to start drawing the indicator. |
right |
int : The right position (relative to the left bounds of this View) to end the drawing of the indicator. |
也可以看看:
void setChildIndicatorBoundsRelative (int start, int end)
设置子指示符的相对绘图边界。 对于任何一种,您都可以指定CHILD_INDICATOR_INHERIT
使用通用指标的边界继承。
Parameters | |
---|---|
start |
int : The start position (relative to the start bounds of this View) to start drawing the indicator. |
end |
int : The end position (relative to the end bounds of this View) to end the drawing of the indicator. |
也可以看看:
void setGroupIndicator (Drawable groupIndicator)
设置要在组旁边绘制的指标。
Parameters | |
---|---|
groupIndicator |
Drawable : The drawable to be used as an indicator. If the group is empty, the state state_empty will be set. If the group is expanded, the state state_expanded will be set. |
void setIndicatorBounds (int left, int right)
设置指标的绘图边界(至少,组指标受此影响;如果子指标边界设置为继承,子指标受此影响)。
Parameters | |
---|---|
left |
int : The left position (relative to the left bounds of this View) to start drawing the indicator. |
right |
int : The right position (relative to the left bounds of this View) to end the drawing of the indicator. |
void setIndicatorBoundsRelative (int start, int end)
设置指标的相对绘图边界(至少,组指标受此影响;如果子指标边界设置为继承,则子指标受此影响)。
Parameters | |
---|---|
start |
int : The start position (relative to the start bounds of this View) to start drawing the indicator. |
end |
int : The end position (relative to the end bounds of this View) to end the drawing of the indicator. |
void setOnChildClickListener (ExpandableListView.OnChildClickListener onChildClickListener)
Parameters | |
---|---|
onChildClickListener |
ExpandableListView.OnChildClickListener
|
void setOnGroupClickListener (ExpandableListView.OnGroupClickListener onGroupClickListener)
Parameters | |
---|---|
onGroupClickListener |
ExpandableListView.OnGroupClickListener
|
void setOnGroupCollapseListener (ExpandableListView.OnGroupCollapseListener onGroupCollapseListener)
Parameters | |
---|---|
onGroupCollapseListener |
ExpandableListView.OnGroupCollapseListener
|
void setOnGroupExpandListener (ExpandableListView.OnGroupExpandListener onGroupExpandListener)
Parameters | |
---|---|
onGroupExpandListener |
ExpandableListView.OnGroupExpandListener
|
void setOnItemClickListener (AdapterView.OnItemClickListener l)
当单击一个项目并且调用者倾向于接收ListView风格的位置而不是组和/或子位置时,注册要调用的回调。 在大多数情况下,主叫方应使用setOnGroupClickListener(ExpandableListView.OnGroupClickListener)
和/或setOnChildClickListener(ExpandableListView.OnChildClickListener)
。
Parameters | |
---|---|
l |
AdapterView.OnItemClickListener : The callback that will be invoked. |
boolean setSelectedChild (int groupPosition, int childPosition, boolean shouldExpandGroup)
将选择设置为指定的子项。 如果孩子处于折叠组中,则只有在shouldExpandGroup设置为true时才会展开该组,并且随后选择该孩子,否则该方法将返回false。
Parameters | |
---|---|
groupPosition |
int : The position of the group that contains the child. |
childPosition |
int : The position of the child within the group. |
shouldExpandGroup |
boolean : Whether the child's group should be expanded if it is collapsed. |
Returns | |
---|---|
boolean |
Whether the selection was successfully set on the child. |
void setSelectedGroup (int groupPosition)
将选择设置为指定的组。
Parameters | |
---|---|
groupPosition |
int : The position of the group that should be selected. |
void dispatchDraw (Canvas canvas)
通过绘制来绘制子视图。 这可能会被派生类重写,以便在子对象被绘制之前获得控制权(但在绘制自己的视图之后)。
Parameters | |
---|---|
canvas |
Canvas : the canvas on which to draw the view |