Заполнение Android Spinner из SQLite, но с двумя полями?

Мне, наконец, удалось заполнить счетчик из sqlite db после долгих возни с этим кодом, однако он использует только одно поле, и я хочу, чтобы имя и фамилия были в одном и том же элементе счетчика?

Код выглядит следующим образом:

    private void fillSpinner() {
    Cursor c = myDbHelper.FetchDrivers();
    startManagingCursor(c);

    // create an array to specify which fields we want to display
    String[] from = new String[]{"FirstName"};
    // create an array of the display item we want to bind our data to
    int[] to = new int[]{android.R.id.text1};
    // create simple cursor adapter
    SimpleCursorAdapter adapter =
      new SimpleCursorAdapter(this, android.R.layout.simple_spinner_item, c, from, to );
    adapter.setDropDownViewResource( android.R.layout.simple_spinner_dropdown_item );
    // get reference to our spinner
    Spinner s = (Spinner) findViewById( R.id.spr_Driver1);
    s.setAdapter(adapter);
}

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

Любая помощь будет здорово!

Спасибо, Крис


person Chris Mayhew    schedule 17.05.2012    source источник


Ответы (1)


Для этого вам нужно изменить android.R.layout.simple_spinner_item и android.R.layout.simple_spinner_dropdown_item, так как эти элементы макета способны отображать только один элемент в выпадающем списке и на счетчике. Для вашей цели лучше всего создать собственный макет, состоящий из двух элементов. Здесь — это ссылка о том, как это сделать.

person SpeedBirdNine    schedule 17.05.2012
comment
Большое спасибо за быстрый ответ, именно то, что я хотел, и похоже, что это может решить и что-то еще для меня! - person Chris Mayhew; 17.05.2012