【发布时间】:2013-11-15 20:16:45
【问题描述】:
我正在关注@JuanSánchez 建议的answer,但我遇到了一个问题。
我的问题是在尝试将 android.database.Cursor 对象 (c) 转换为 CursorWrapper 时出现 ClassCastException。更具体地说,代码行是CursorWrapper cw = (CursorWrapper)c;。
CursorWindow cursorWindow = null;
int cursorPosition = 0;
if (android.os.Build.VERSION.SDK_INT < 11) {
CursorWrapper cw = (CursorWrapper)c;
Class<?> cursorWrapper = CursorWrapper.class;
Field mCursor = null;
try {
mCursor = cursorWrapper.getDeclaredField("mCursor");
mCursor.setAccessible(true);
AbstractWindowedCursor abstractWindowedCursor = (AbstractWindowedCursor)mCursor.get(cw);
cursorWindow = abstractWindowedCursor.getWindow();
cursorPosition = abstractWindowedCursor.getPosition();
} catch (NoSuchFieldException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
如有任何帮助,我将不胜感激。
【问题讨论】:
标签: android android-sqlite android-cursor