Most visited

Recently visited

Added in API level 1

CursorTreeAdapter

public abstract class CursorTreeAdapter
extends BaseExpandableListAdapter implements Filterable

java.lang.Object
   ↳ android.widget.BaseExpandableListAdapter
     ↳ android.widget.CursorTreeAdapter
Known Direct Subclasses
Known Indirect Subclasses


将一系列Cursor的数据公开给ExpandableListView小部件的适配器。 顶层Cursor (即在构造函数中给出)暴露组,而随后的Cursor期从返回getChildrenCursor(Cursor)暴露儿童的特定组内。 游标必须包含名为“_id”的列,否则此类将不起作用。

Summary

Public constructors

CursorTreeAdapter(Cursor cursor, Context context)

构造函数。

CursorTreeAdapter(Cursor cursor, Context context, boolean autoRequery)

构造函数。

Public methods

void changeCursor(Cursor cursor)
String convertToString(Cursor cursor)
Cursor getChild(int groupPosition, int childPosition)
long getChildId(int groupPosition, int childPosition)
View getChildView(int groupPosition, int childPosition, boolean isLastChild, View convertView, ViewGroup parent)
int getChildrenCount(int groupPosition)
Cursor getCursor()
Filter getFilter()

返回可用于使用过滤模式约束数据的过滤器。

FilterQueryProvider getFilterQueryProvider()
Cursor getGroup(int groupPosition)
int getGroupCount()
long getGroupId(int groupPosition)
View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent)
boolean hasStableIds()
boolean isChildSelectable(int groupPosition, int childPosition)
void notifyDataSetChanged()
void notifyDataSetChanged(boolean releaseCursors)

通知数据集更改,但可以选择不释放任何缓存的游标。

void notifyDataSetInvalidated()
void onGroupCollapsed(int groupPosition)

当一个组被折叠时调用。

Cursor runQueryOnBackgroundThread(CharSequence constraint)
void setChildrenCursor(int groupPosition, Cursor childrenCursor)

为特定组设置子游标。

void setFilterQueryProvider(FilterQueryProvider filterQueryProvider)
void setGroupCursor(Cursor cursor)

设置组光标。

Protected methods

abstract void bindChildView(View view, Context context, Cursor cursor, boolean isLastChild)

将现有视图绑定到指针指向的子数据

abstract void bindGroupView(View view, Context context, Cursor cursor, boolean isExpanded)

将现有视图绑定到光标指向的组数据。

abstract Cursor getChildrenCursor(Cursor groupCursor)

获取给定组的孩子的光标。

abstract View newChildView(Context context, Cursor cursor, boolean isLastChild, ViewGroup parent)

创建一个新的子视图来保存指针指向的数据。

abstract View newGroupView(Context context, Cursor cursor, boolean isExpanded, ViewGroup parent)

创建一个新的组视图来保存指针指向的组数据。

Inherited methods

From class android.widget.BaseExpandableListAdapter
From class java.lang.Object
From interface android.widget.ExpandableListAdapter
From interface android.widget.HeterogeneousExpandableList
From interface android.widget.Filterable

Public constructors

CursorTreeAdapter

Added in API level 1
CursorTreeAdapter (Cursor cursor, 
                Context context)

构造函数。 只要光标发生变化,适配器就会在光标上调用requery() ,以便始终显示最新的数据。

Parameters
cursor Cursor: The cursor from which to get the data for the groups.
context Context

CursorTreeAdapter

Added in API level 1
CursorTreeAdapter (Cursor cursor, 
                Context context, 
                boolean autoRequery)

构造函数。

Parameters
cursor Cursor: The cursor from which to get the data for the groups.
context Context: The context
autoRequery boolean: If true the adapter will call requery() on the cursor whenever it changes so the most recent data is always displayed.

Public methods

changeCursor

Added in API level 1
void changeCursor (Cursor cursor)

Parameters
cursor Cursor

也可以看看:

convertToString

Added in API level 1
String convertToString (Cursor cursor)

Parameters
cursor Cursor
Returns
String

也可以看看:

getChild

Added in API level 1
Cursor getChild (int groupPosition, 
                int childPosition)

Parameters
groupPosition int
childPosition int
Returns
Cursor

getChildId

Added in API level 1
long getChildId (int groupPosition, 
                int childPosition)

Parameters
groupPosition int
childPosition int
Returns
long

getChildView

Added in API level 1
View getChildView (int groupPosition, 
                int childPosition, 
                boolean isLastChild, 
                View convertView, 
                ViewGroup parent)

Parameters
groupPosition int
childPosition int
isLastChild boolean
convertView View
parent ViewGroup
Returns
View

getChildrenCount

Added in API level 1
int getChildrenCount (int groupPosition)

Parameters
groupPosition int
Returns
int

getCursor

Added in API level 1
Cursor getCursor ()

Returns
Cursor

也可以看看:

getFilter

Added in API level 1
Filter getFilter ()

返回可用于使用过滤模式约束数据的过滤器。

这种方法通常由 Adapter类实现。

Returns
Filter a filter used to constrain data

getFilterQueryProvider

Added in API level 1
FilterQueryProvider getFilterQueryProvider ()

Returns
FilterQueryProvider

也可以看看:

getGroup

Added in API level 1
Cursor getGroup (int groupPosition)

Parameters
groupPosition int
Returns
Cursor

getGroupCount

Added in API level 1
int getGroupCount ()

Returns
int

getGroupId

Added in API level 1
long getGroupId (int groupPosition)

Parameters
groupPosition int
Returns
long

getGroupView

Added in API level 1
View getGroupView (int groupPosition, 
                boolean isExpanded, 
                View convertView, 
                ViewGroup parent)

Parameters
groupPosition int
isExpanded boolean
convertView View
parent ViewGroup
Returns
View

hasStableIds

Added in API level 1
boolean hasStableIds ()

Returns
boolean

isChildSelectable

Added in API level 1
boolean isChildSelectable (int groupPosition, 
                int childPosition)

Parameters
groupPosition int
childPosition int
Returns
boolean

notifyDataSetChanged

Added in API level 1
void notifyDataSetChanged ()

notifyDataSetChanged

Added in API level 1
void notifyDataSetChanged (boolean releaseCursors)

通知数据集更改,但可以选择不释放任何缓存的游标。

Parameters
releaseCursors boolean: Whether to release and deactivate any cached cursors.

notifyDataSetInvalidated

Added in API level 1
void notifyDataSetInvalidated ()

onGroupCollapsed

Added in API level 1
void onGroupCollapsed (int groupPosition)

Called when a group is collapsed.

Parameters
groupPosition int: The group being collapsed.

runQueryOnBackgroundThread

Added in API level 1
Cursor runQueryOnBackgroundThread (CharSequence constraint)

Parameters
constraint CharSequence
Returns
Cursor

也可以看看:

setChildrenCursor

Added in API level 1
void setChildrenCursor (int groupPosition, 
                Cursor childrenCursor)

为特定组设置子游标。 如果有一个现有的游标,它将被关闭。

这在异步查询以防止阻止UI时非常有用。

Parameters
groupPosition int: The group whose children are being set via this Cursor.
childrenCursor Cursor: The Cursor that contains the children of the group.

setFilterQueryProvider

Added in API level 1
void setFilterQueryProvider (FilterQueryProvider filterQueryProvider)

Parameters
filterQueryProvider FilterQueryProvider

也可以看看:

setGroupCursor

Added in API level 1
void setGroupCursor (Cursor cursor)

设置组光标。

Parameters
cursor Cursor: The Cursor to set for the group. If there is an existing cursor it will be closed.

Protected methods

bindChildView

Added in API level 1
void bindChildView (View view, 
                Context context, 
                Cursor cursor, 
                boolean isLastChild)

将现有视图绑定到指针指向的子数据

Parameters
view View: Existing view, returned earlier by newChildView
context Context: Interface to application's global information
cursor Cursor: The cursor from which to get the data. The cursor is already moved to the correct position.
isLastChild boolean: Whether the child is the last child within its group.

bindGroupView

Added in API level 1
void bindGroupView (View view, 
                Context context, 
                Cursor cursor, 
                boolean isExpanded)

将现有视图绑定到光标指向的组数据。

Parameters
view View: Existing view, returned earlier by newGroupView.
context Context: Interface to application's global information
cursor Cursor: The cursor from which to get the data. The cursor is already moved to the correct position.
isExpanded boolean: Whether the group is expanded.

getChildrenCursor

Added in API level 1
Cursor getChildrenCursor (Cursor groupCursor)

获取给定组的孩子的光标。 子类必须实现此方法才能返回特定组的子数据。

如果要异步查询提供程序以防止阻塞UI,则可以返回null,并在稍后调用 setChildrenCursor(int, Cursor)

在Activity的生命周期中管理这个Cursor是你的责任。 使用managedQuery(Uri, String[], String, String[], String)是一个好主意,它可以为你处理这个问题。 在某些情况下,适配器会自行停用光标,但这并非总是如此,因此请确保光标已妥善管理。

Parameters
groupCursor Cursor: The cursor pointing to the group whose children cursor should be returned
Returns
Cursor The cursor for the children of a particular group, or null.

newChildView

Added in API level 1
View newChildView (Context context, 
                Cursor cursor, 
                boolean isLastChild, 
                ViewGroup parent)

创建一个新的子视图来保存指针指向的数据。

Parameters
context Context: Interface to application's global information
cursor Cursor: The cursor from which to get the data. The cursor is already moved to the correct position.
isLastChild boolean: Whether the child is the last child within its group.
parent ViewGroup: The parent to which the new view is attached to
Returns
View the newly created view.

newGroupView

Added in API level 1
View newGroupView (Context context, 
                Cursor cursor, 
                boolean isExpanded, 
                ViewGroup parent)

创建一个新的组视图来保存指针指向的组数据。

Parameters
context Context: Interface to application's global information
cursor Cursor: The group cursor from which to get the data. The cursor is already moved to the correct position.
isExpanded boolean: Whether the group is expanded.
parent ViewGroup: The parent to which the new view is attached to
Returns
View The newly created view.

Hooray!