moveToNext()为false

时间:2010-11-30 03:46:03

标签: java android cursor-position

//row --> 2
int row = mCursor.getCount();
for (int i = 0; i < row; i++) {
 if (mCursor.moveToPosition(i)){
  int val = mCursor.getInt(mCursor.getColumnIndexOrThrow(UTILI_COLLOC_ID_UTILI))
 }
}

我不明白,因为我的查询中有2行。但是当我想用“mCursor.moveToPosition(i)”读取seconde行时,它是错误的......为什么?

2 个答案:

答案 0 :(得分:1)

我认为你可以安全地使用

while(mCursor.moveToNext()) {
// code
}

而不是循环

答案 1 :(得分:1)

你有2行:0和&amp; 1号。我想在这里你的问题是因为你正在转向循环中的下一个记录。光标已经移动到最后一条记录。所以它返回你的错误。

解决方案:将 mCursor.moveToPosition(1); 放在for循环的一边。