Проблемы Spinner + Cursor - PullRequest
       1

Проблемы Spinner + Cursor

0 голосов
/ 31 января 2012

Я, честно говоря, понятия не имею, что за сделка с этим.Это должно быть достаточно просто, но по какой-то причине мой счетчик не заполняется никакими данными.

    final String fields[] = { "siteName","_id" };
    int[] to = new int[] { android.R.id.text1 };

    DatabaseHelper helper = new DatabaseHelper(this);
    database = helper.getReadableDatabase();
    Cursor ftpCursor = database.query("ftptable", fields, null, null, null, null, null);
    startManagingCursor(ftpCursor);

    Log.i("tag", "getcount result:"+ftpCursor.getCount());

    SimpleCursorAdapter dataSource = new SimpleCursorAdapter(this, android.R.layout.simple_spinner_item, ftpCursor, fields, to);
    dataSource.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

    s = (Spinner) findViewById(R.id.upload_screen_spinner);
    s.setAdapter(dataSource);

Строка журнала возвращает getCount (), равный 4, поэтому я знаю, что курсор имеетданные в нем.Когда вертушка открывается, в ней вообще нет данных.Я полагаю, что это должно быть что-то глупое, но я просто не вижу этого.

Ответы [ 2 ]

1 голос
/ 01 февраля 2012

Я наконец-то заработал.Я думаю, что катализирующим исправлением было изменение макета в SimpleCursorAdapter на android.R.layout.simple_spinner_dropdown_item

final String from[] = {  "siteName","_id" };
int[] to = new int[] { android.R.id.text1 };

DatabaseHelper helper = new DatabaseHelper(this);
database = helper.getWritableDatabase();
Cursor ftpCursor = database.query("ftptable", from, null, null, null, null, null);

SimpleCursorAdapter dataSource = new SimpleCursorAdapter(this, android.R.layout.simple_spinner_dropdown_item, ftpCursor, from, to);

ftpCursor.moveToFirst();
database.close();


Spinner s = (Spinner) findViewById(R.id.upload_screen_spinner);
s.setAdapter(dataSource);
0 голосов
/ 01 февраля 2012

Ваш массив из имеет два значения, в то время как в массиве от до есть одно поле. Попробуйте удалить «_id» и посмотреть, работает ли он.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...