Нет, это работает правильно. Cursor
s начинается с индекса строки -1 (перед первой строкой). Если Cursor
ссылается на несколько строк, предпочтительным методом является цикл по ним с помощью цикла while
, как вы предложили. Он вызовет moveToNext()
, который переместит вас в индекс 0 (первый ряд), и пойдет оттуда.
Если ваш Cursor
ссылается только на одну строку, вы можете вызвать moveToFirst()
на ней перед чтением данных, чтобы убедиться, что вы находитесь в допустимом индексе. И moveToFirst()
, и moveToNext()
имеют одинаковый эффект при первом создании Cursor
с индексом -1.