значение по умолчанию для Android Spinner с помощью курсора - PullRequest
1 голос
/ 21 ноября 2011

Я использую спиннербокс в своем приложении. Spinnerbox должен быть заполнен проектами из базы данных. Это само по себе уже работает. Однако мне нужен еще один элемент в выпадающем списке. Я хочу, чтобы первый пункт был «общим», вообще не проект. Таким образом, он не извлекается из базы данных. Есть ли способ вставить его в курсор или адаптер?

Ответы [ 3 ]

2 голосов
/ 24 сентября 2012

Что мне помогло, так это сделать UNION в запросе sql.

dbStatic.rawQuery(
    " SELECT 2 as deftop, typeid as _id, typename as label FROM objtypes UNION "+
    " SELECT 1 as deftop, -1 as _id, "+strDefaultSpinner+" as label "+
    " ORDER BY deftop asc, label ", null
);

если выбранный элемент равен -1, то это значение по умолчанию. В противном случае это запись из таблицы.

1 голос
/ 21 ноября 2011

Я столкнулся с той же проблемой некоторое время назад ... проблема в том, что вы не можете вставить информацию в курсор (потому что это всего лишь указатель), поэтому я считаю, что между вами должен быть какой-то посредник ... мой способЧтобы решить эту проблему, нужно просто создать массив строк [cursor.getCount + 1], затем вставить свой «general» в [0], а затем пройти через курсор, чтобы вставить остальные.

он проходит через элементыдополнительный раунд (что не так уж плохо в моем случае), но для длинного списка вы можете переопределить адаптер и вставить строку, прежде чем он пройдет через курсор, который я не могу помочь вам с кодом для этого ..

0 голосов
/ 21 ноября 2011

Мне удалось решить эту проблему иначе, чем я изначально планировал.Но это работает хорошо.Вместо общего варианта.Я сделал флажок.Проверено ли оно, то его общее и спиннер отключен.И если не отмечен, он будет включен.Это работает для моей ситуации.

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