public interface CrossProcessCursor
implements Cursor
android.database.CrossProcessCursor |
Known Indirect Subclasses |
跨进程游标是 Cursor
的扩展,它也支持远程进程的使用。
通过使用fillWindow(int, CursorWindow)
填充CursorWindow
对象,将跨进程光标的内容编组到远程进程。 作为优化,光标可以通过getWindow()
提供预填充窗口,从而避免了将数据复制到另一个光标窗口的需要。
Inherited constants |
---|
From interface android.database.Cursor
|
Public methods |
|
---|---|
abstract void |
fillWindow(int position, CursorWindow window) 将光标数据复制到窗口中。 |
abstract CursorWindow |
getWindow() 返回包含此游标内数据的预填充窗口。 |
abstract boolean |
onMove(int oldPosition, int newPosition) 每次将光标成功滚动到新位置时都会调用此函数,从而使子类有机会更新其可能具有的任何状态。 |
Inherited methods |
|
---|---|
From interface android.database.Cursor
|
|
From interface java.io.Closeable
|
|
From interface java.lang.AutoCloseable
|
void fillWindow (int position, CursorWindow window)
将光标数据复制到窗口中。
清除窗口并用从请求行位置开始的数据填充窗口,直到光标中的所有数据都用尽或窗口用尽空间。
填充的窗口使用与原始光标相同的行索引。 例如,如果从光标的第5行开始填充窗口,则可以通过询问第5行来从窗口查询第5行的内容,因为光标所使用的行索引与第5行之间存在直接对应关系窗口。
光标的当前位置(由 getPosition()
返回)不会被此方法更改。
Parameters | |
---|---|
position |
int : The zero-based index of the first row to copy into the window. |
window |
CursorWindow : The window to fill. |
CursorWindow getWindow ()
返回包含此游标内数据的预填充窗口。
特别是,该窗口包含由getPosition()
指示的行。 只要当前行移动到窗口覆盖的范围之外,窗口的内容就会自动滚动。
Returns | |
---|---|
CursorWindow |
The pre-filled window, or null if none. |
boolean onMove (int oldPosition, int newPosition)
每次将光标成功滚动到新位置时都会调用此函数,从而使子类有机会更新其可能具有的任何状态。 如果它返回false,移动功能也会这样做,并且光标将滚动到beforeFirst位置。
这个函数应该被诸如 moveToPosition(int)
的方法 moveToPosition(int)
,所以它通常不会从游标类本身之外被调用。
Parameters | |
---|---|
oldPosition |
int : The position that we're moving from. |
newPosition |
int : The position that we're moving to. |
Returns | |
---|---|
boolean |
True if the move is successful, false otherwise. |