CursorAdapter ведет себя немного по-другому, чем другие адаптеры списка - вместо getView () волшебство здесь происходит в newView () и bindView (), поэтому я думаю, что getView () не тот метод, который нужно переопределять.
Вы можете получить только один результат, потому что после создания первой строки CursorAdapter ожидает, что bindView () вставит новые данные и повторно использует уже раздутую строку, и вы ожидаете, что getView () сделает это.
Я предложу вам попробовать переместить ваш код в newView (), чтобы раздуть ваше представление, и bindView (), чтобы выполнить фактическую логику для заполнения строк.
Удачи, и держите нас в курсе результатов.