Подтвердить что ты не робот

Разница между android.R.layout.simple_spinner_dropdown_item и android.R.layout.simple_spinner_item

Вот пример кода использования spinner в android:

Spinner spinner = (Spinner) findViewById(R.id.spinner);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.gender_array, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);

Я понял, что нам нужно указать макет для datarows в адаптере

Но зачем снова использовать метод setDropDownViewResource(). Я имею в виду, что делает эта функция, а также расскажу, как она отличается от конструктора ArrayAdapter.

Я просмотрел документацию, но не понял полностью.

4b9b3361

Ответ 1

Вот различие - см. ниже изображения

simple_spinner_item

Simple_Spinner

Если вы используете свой счетчик с spinner.setAdapter(adapter); непосредственно в своем коде, ваш счетчик будет выглядеть как над изображением.

Но, если вы используете adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); в своем коде, он покажет ваш счетчик, как показано ниже, где элементы счетчика будут показаны с помощью переключателей.

simple_spinner_dropdown_item

enter image description here

Ответ 2

Обычно разница между android.R.layout.simple_spinner_dropdown_item и android.R.layout.simple_spinner_item составляет

Простой вид выпадающего списка

Simple spinner dropdown view

Простой вид spinner

simple spinner view

Ответ 3

Разница заключается в следующем:

  • simple_spinner_item - это макет каждого раскрывающегося элемента в списке счетчиков.
  • И чтобы разместить эти x количество выпадающих элементов, требуемый макет simple_spinner_dropdown_item