3
//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)」で 2 行目を読みたい場合は false です...なぜですか?

4

2 に答える 2

1

安心してご利用いただけると思います

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

for ループの代わりに

于 2010-11-30T03:50:17.770 に答える
1

0 番目と 1 番目の 2 つの行があります。ここであなたの問題は、ループ内の次のレコードに移動していて、カーソルがすでに最後のレコードに移動しているためだと思います。したがって、FALSEが返されます。

解決策: put mCursor.moveToPosition(1); for ループの外側。

于 2010-11-30T03:51:25.460 に答える