Most visited

Recently visited

Added in API level 1

CursorWrapper

public class CursorWrapper
extends Object implements Cursor

java.lang.Object
   ↳ android.database.CursorWrapper
Known Direct Subclasses


将Cursor的所有调用委托给实际的游标对象。 该类的主要用途是扩展游标,而仅覆盖其方法的子集。

Summary

Inherited constants

From interface android.database.Cursor

Public constructors

CursorWrapper(Cursor cursor)

创建一个游标包装器。

Public methods

void close()

关闭光标,释放其所有资源并使其完全无效。

void copyStringToBuffer(int columnIndex, CharArrayBuffer buffer)

检索请求的列文本并将其存储在提供的缓冲区中。

void deactivate()

取消激活光标,使所有调用失败,直到调用 requery()

byte[] getBlob(int columnIndex)

以字节数组的形式返回请求的列的值。

int getColumnCount()

返回总列数

int getColumnIndex(String columnName)

返回给定列名称的从零开始的索引,如果该列不存在,则返回-1。

int getColumnIndexOrThrow(String columnName)

返回给定列名称的从零开始的索引,如果该列不存在则返回 IllegalArgumentException

String getColumnName(int columnIndex)

返回给定的从零开始的列索引处的列名称。

String[] getColumnNames()

以结果中列出的顺序返回一个字符串数组,其中包含结果集中所有列的名称。

int getCount()

返回游标中的行数。

double getDouble(int columnIndex)

以double形式返回请求的列的值。

Bundle getExtras()

返回一组额外的值。

float getFloat(int columnIndex)

以浮点形式返回请求的列的值。

int getInt(int columnIndex)

以int形式返回请求的列的值。

long getLong(int columnIndex)

以long形式返回请求列的值。

Uri getNotificationUri()

返回此游标数据中的更改通知将传递的URI,如先前由 setNotificationUri(ContentResolver, Uri)设置的 setNotificationUri(ContentResolver, Uri)

int getPosition()

返回行集合中光标的当前位置。

short getShort(int columnIndex)

以短为单位返回请求列的值。

String getString(int columnIndex)

以String形式返回请求的列的值。

int getType(int columnIndex)

返回给定列值的数据类型。

boolean getWantsAllOnMoveCalls()

如果此方法返回true,onMove()将仅在进程间调用。

Cursor getWrappedCursor()

获取由此实例包装的底层游标。

boolean isAfterLast()

返回指针是否指向最后一行之后的位置。

boolean isBeforeFirst()

返回光标是否指向第一行之前的位置。

boolean isClosed()

如果光标关闭,则返回true

boolean isFirst()

返回光标是否指向第一行。

boolean isLast()

返回指针是否指向最后一行。

boolean isNull(int columnIndex)

如果指定列中的值为空,则返回 true

boolean move(int offset)

从当前位置向前或向后移动光标相对量。

boolean moveToFirst()

将光标移到第一行。

boolean moveToLast()

将光标移到最后一行。

boolean moveToNext()

将光标移到下一行。

boolean moveToPosition(int position)

将光标移到绝对位置。

boolean moveToPrevious()

将光标移到上一行。

void registerContentObserver(ContentObserver observer)

注册一个观察者,当支持该游标的内容发生更改时调用该观察者。

void registerDataSetObserver(DataSetObserver observer)

注册时的变化发生在该光标数据集的内容被称为,例如一个观察者,当数据集通过改变 requery()deactivate() ,或 close()

boolean requery()

执行再次创建光标的查询,刷新其内容。

Bundle respond(Bundle extras)

这是光标与光标通信的用户的一种带外方式。

void setExtras(Bundle extras)

设置 Bundle返回的 getExtras()

void setNotificationUri(ContentResolver cr, Uri uri)

注册以观看更改的内容URI。

void unregisterContentObserver(ContentObserver observer)

通过 registerContentObserver(ContentObserver)取消注册先前已使用此光标注册的观察者。

void unregisterDataSetObserver(DataSetObserver observer)

通过 registerContentObserver(ContentObserver)取消注册先前已使用此光标注册的观察者。

Inherited methods

From class java.lang.Object
From interface android.database.Cursor
From interface java.io.Closeable
From interface java.lang.AutoCloseable

Public constructors

CursorWrapper

Added in API level 1
CursorWrapper (Cursor cursor)

创建一个游标包装器。

Parameters
cursor Cursor: The underlying cursor to wrap.

Public methods

close

Added in API level 1
void close ()

关闭光标,释放其所有资源并使其完全无效。 deactivate()不同,调用requery()不会使光标再次有效。

copyStringToBuffer

Added in API level 1
void copyStringToBuffer (int columnIndex, 
                CharArrayBuffer buffer)

检索请求的列文本并将其存储在提供的缓冲区中。 如果缓冲区大小不够,将分配一个新的字符缓冲区并分配给CharArrayBuffer.data

Parameters
columnIndex int: the zero-based index of the target column. if the target column is null, return buffer
buffer CharArrayBuffer: the buffer to copy the text into.

deactivate

Added in API level 1
void deactivate ()

取消激活光标,使所有调用失败,直到调用requery() 非活动游标使用比活动游标更少的资源。 调用requery()将使光标再次处于活动状态。

getBlob

Added in API level 1
byte[] getBlob (int columnIndex)

以字节数组的形式返回请求的列的值。

结果以及当列值为空或列类型不是blob类型时此方法是否引发异常是实现定义的。

Parameters
columnIndex int: the zero-based index of the target column.
Returns
byte[] the value of that column as a byte array.

getColumnCount

Added in API level 1
int getColumnCount ()

返回总列数

Returns
int number of columns

getColumnIndex

Added in API level 1
int getColumnIndex (String columnName)

返回给定列名称的从零开始的索引,如果该列不存在,则返回-1。 如果您希望该列存在, getColumnIndexOrThrow(String)改为使用getColumnIndexOrThrow(String) ,这会使错误更加清晰。

Parameters
columnName String: the name of the target column.
Returns
int the zero-based column index for the given column name, or -1 if the column name does not exist.

getColumnIndexOrThrow

Added in API level 1
int getColumnIndexOrThrow (String columnName)

返回给定列名称的从零开始的索引,如果列不存在则返回IllegalArgumentException 如果您不确定列是否存在或不使用getColumnIndex(String)并检查-1,这比捕获异常更有效。

Parameters
columnName String: the name of the target column.
Returns
int the zero-based column index for the given column name
Throws
IllegalArgumentException

getColumnName

Added in API level 1
String getColumnName (int columnIndex)

返回给定的从零开始的列索引处的列名称。

Parameters
columnIndex int: the zero-based index of the target column.
Returns
String the column name for the given column index.

getColumnNames

Added in API level 1
String[] getColumnNames ()

以结果中列出的顺序返回一个字符串数组,其中包含结果集中所有列的名称。

Returns
String[] the names of the columns returned in this query.

getCount

Added in API level 1
int getCount ()

返回游标中的行数。

Returns
int the number of rows in the cursor.

getDouble

Added in API level 1
double getDouble (int columnIndex)

以double形式返回请求的列的值。

结果以及当列值为空,列类型不是浮点类型或浮点值不可表示时,此方法引发异常,或者由于实现定义了 double值,因此浮点值不可表示。

Parameters
columnIndex int: the zero-based index of the target column.
Returns
double the value of that column as a double.

getExtras

Added in API level 1
Bundle getExtras ()

返回一组额外的值。 这是光标向用户提供带外元数据的可选方式。 其中一种用途是报告为游标提取数据所需的网络请求的进度。

这些值只有在调用重新查询时才会更改。

Returns
Bundle cursor-defined values, or Bundle.EMPTY if there are no values. Never null.

getFloat

Added in API level 1
float getFloat (int columnIndex)

以浮点形式返回请求的列的值。

结果以及当列值为空,列类型不是浮点类型或浮点值不可表示时,此方法引发异常,或者由于实现定义的值为 float ,所以浮点值不可表示。

Parameters
columnIndex int: the zero-based index of the target column.
Returns
float the value of that column as a float.

getInt

Added in API level 1
int getInt (int columnIndex)

以int形式返回请求的列的值。

结果,这种方法是否抛出异常当列值为空,列类型是不是一个整数类型,或者整数值是范围[外 Integer.MIN_VALUEInteger.MAX_VALUE ]为实现定义的。

Parameters
columnIndex int: the zero-based index of the target column.
Returns
int the value of that column as an int.

getLong

Added in API level 1
long getLong (int columnIndex)

以long形式返回请求列的值。

结果,这种方法是否抛出异常当列值为空,列类型是不是一个整数类型,或者整数值是范围[外 Long.MIN_VALUELong.MAX_VALUE ]为实现定义的。

Parameters
columnIndex int: the zero-based index of the target column.
Returns
long the value of that column as a long.

getNotificationUri

Added in API level 19
Uri getNotificationUri ()

返回此游标数据中的更改通知将传递的URI,如先前由 setNotificationUri(ContentResolver, Uri)设置的 setNotificationUri(ContentResolver, Uri)

Returns
Uri Returns a URI that can be used with ContentResolver.registerContentObserver to find out about changes to this Cursor's data. May be null if no notification URI has been set.

getPosition

Added in API level 1
int getPosition ()

返回行集合中光标的当前位置。 该值是从零开始的。 当行集合第一次返回时,游标将位于第一行之前的位置-1。 在返回最后一行之后,对next()的另一次调用将使游标超过最后一个条目,位于count()的位置。

Returns
int the current cursor position.

getShort

Added in API level 1
short getShort (int columnIndex)

以短为单位返回请求列的值。

结果,这种方法是否抛出异常当列值为空,列类型是不是一个整数类型,或者整数值是范围[外 Short.MIN_VALUEShort.MAX_VALUE ]为实现定义的。

Parameters
columnIndex int: the zero-based index of the target column.
Returns
short the value of that column as a short.

getString

Added in API level 1
String getString (int columnIndex)

以String形式返回请求的列的值。

结果以及此方法在列值为空或列类型不是字符串类型时是否引发异常是实现定义的。

Parameters
columnIndex int: the zero-based index of the target column.
Returns
String the value of that column as a String.

getType

Added in API level 11
int getType (int columnIndex)

返回给定列值的数据类型。 列的优选类型的返回,但如在get型方法如中记录的数据可以被转换到其它类型的getInt(int)getFloat(int)

返回的列类型是

Parameters
columnIndex int: the zero-based index of the target column.
Returns
int column value type

getWantsAllOnMoveCalls

Added in API level 1
boolean getWantsAllOnMoveCalls ()

如果此方法返回true,onMove()将仅在进程间调用。

Returns
boolean whether all cursor movement should result in a call to onMove().

getWrappedCursor

Added in API level 11
Cursor getWrappedCursor ()

获取由此实例包装的底层游标。

Returns
Cursor The wrapped cursor.

isAfterLast

Added in API level 1
boolean isAfterLast ()

返回指针是否指向最后一行之后的位置。

Returns
boolean whether the cursor is after the last result.

isBeforeFirst

Added in API level 1
boolean isBeforeFirst ()

返回光标是否指向第一行之前的位置。

Returns
boolean whether the cursor is before the first result.

isClosed

Added in API level 1
boolean isClosed ()

如果光标关闭,则返回true

Returns
boolean true if the cursor is closed.

isFirst

Added in API level 1
boolean isFirst ()

返回光标是否指向第一行。

Returns
boolean whether the cursor is pointing at the first entry.

isLast

Added in API level 1
boolean isLast ()

返回指针是否指向最后一行。

Returns
boolean whether the cursor is pointing at the last entry.

isNull

Added in API level 1
boolean isNull (int columnIndex)

如果指定列中的值为空,则返回 true

Parameters
columnIndex int: the zero-based index of the target column.
Returns
boolean whether the column value is null.

move

Added in API level 1
boolean move (int offset)

从当前位置向前或向后移动光标相对量。 正偏移向前移动,负偏移向后移动。 如果最终位置超出结果集的范围,则结果位置将分别固定为-1或count(),具体取决于值是否在集合的前面或结尾。

如果请求的目标可达,此方法将返回true,否则返回false。 例如,如果游标当前位于结果集的第二个条目中,并且调用move(-5),则该位置将被固定为-1,并且返回false。

Parameters
offset int: the offset to be applied from the current position.
Returns
boolean whether the requested move fully succeeded.

moveToFirst

Added in API level 1
boolean moveToFirst ()

将光标移到第一行。

如果光标为空,则此方法将返回false。

Returns
boolean whether the move succeeded.

moveToLast

Added in API level 1
boolean moveToLast ()

将光标移到最后一行。

如果光标为空,则此方法将返回false。

Returns
boolean whether the move succeeded.

moveToNext

Added in API level 1
boolean moveToNext ()

将光标移到下一行。

如果游标已经超过结果集中的最后一个条目,则此方法将返回false。

Returns
boolean whether the move succeeded.

moveToPosition

Added in API level 1
boolean moveToPosition (int position)

将光标移到绝对位置。 值的有效范围是-1 <= position <= count。

如果请求目标可达,此方法将返回true,否则返回false。

Parameters
position int: the zero-based position to move to.
Returns
boolean whether the requested move fully succeeded.

moveToPrevious

Added in API level 1
boolean moveToPrevious ()

将光标移到上一行。

如果游标已经在结果集中的第一个条目之前,此方法将返回false。

Returns
boolean whether the move succeeded.

registerContentObserver

Added in API level 1
void registerContentObserver (ContentObserver observer)

注册一个观察者,当支持该游标的内容发生更改时调用该观察者。 通常情况下,数据集不会改变,直到requery()

Parameters
observer ContentObserver: the object that gets notified when the content backing the cursor changes.

registerDataSetObserver

Added in API level 1
void registerDataSetObserver (DataSetObserver observer)

注册时的变化发生在该光标数据集的内容被称为,例如一个观察者,当数据集通过改变 requery()deactivate() ,或 close()

Parameters
observer DataSetObserver: the object that gets notified when the cursors data set changes.

requery

Added in API level 1
boolean requery ()

执行再次创建光标的查询,刷新其内容。 这可以随时完成,包括在致电deactivate() 由于此方法可能会在数据库上执行查询并可能需要一段时间,因此如果在Main(UI)线程上调用该方法,则可能会导致ANR。 如果在主线程上执行此方法,则会打印警告。

Returns
boolean true if the requery succeeded, false if not, in which case the cursor becomes invalid.

respond

Added in API level 1
Bundle respond (Bundle extras)

这是光标与光标通信的用户的一种带外方式。 每个束的结构完全由光标定义。

其中一个用途是告诉游标在报告错误后应该重试网络请求。

Parameters
extras Bundle: extra values, or Bundle.EMPTY. Never null.
Returns
Bundle extra values, or Bundle.EMPTY. Never null.

setExtras

Added in API level 23
void setExtras (Bundle extras)

设置 Bundle返回的 getExtras()

Parameters
extras Bundle: Bundle to set, or null to set an empty bundle.

setNotificationUri

Added in API level 1
void setNotificationUri (ContentResolver cr, 
                Uri uri)

注册以观看更改的内容URI。 这可以是特定数据行的URI(例如,“content:// my_provider_type / 23”),也可以是内容类型的通用URI。

Parameters
cr ContentResolver: The content resolver from the caller's context. The listener attached to this resolver will be notified.
uri Uri: The content URI to watch.

unregisterContentObserver

Added in API level 1
void unregisterContentObserver (ContentObserver observer)

通过 registerContentObserver(ContentObserver)取消注册先前使用此光标注册的观察者。

Parameters
observer ContentObserver: the object to unregister.

unregisterDataSetObserver

Added in API level 1
void unregisterDataSetObserver (DataSetObserver observer)

通过 registerContentObserver(ContentObserver)取消注册先前已使用此光标注册的观察者。

Parameters
observer DataSetObserver: the object to unregister.

Hooray!