Intereting Posts
Android: Как автоматически перезапустить приложение после того, как оно было «принудительно закрыто»? Выполнение не выполнено для задачи ': app: transformClassesAndResourcesWithProguardForRelease Покупка в приложении с сервером Существует ли многоплатформенная платформа для разработки приложений для iPhone / Android? Реализация виджета приложения Actionbar для Android в ListFragment «Недопустимое состояние» при загрузке видео vimeo из другого приложения для Android Изменение языка в самом приложении Как исправить ошибку «Не удалось обнаружить версию Mac OS X с выхода sw_vers:« 10 .12 »из Appium Как запустить Android-приложение без «android.intent.category.LAUNCHER» Объединение нескольких чертежей Как сделать таймер обратного отсчета в представлении Уведомления? Установите уведомление в определенное время для Android Альтернатива для glBlitFrameBuffer () в OpenGL ES 2.0 Как установить кнопку в фиксированном месте в нижней части пользовательского интерфейса? Как получить идентификатор фронтальной камеры с помощью Camera2?

Android: Создайте spinner программно из массива

Я все новичок в Android, и я пытаюсь создать spinner программно и кормить его данными из массива, но Eclipse дает мне предупреждение, которое я не могу обработать.

Вот что я получил:

Этот ArrayList содержит элементы, которые должны быть в spinner (позже заполняется из файла):

ArrayList<String> spinnerArray = new ArrayList<String>();

Это код, который я нашел на сайте, который должен создать счетчик:

  Spinner spinner = new Spinner(this); ArrayAdapter spinnerArrayAdapter = new ArrayAdapter(this, android.R.layout.simple_spinner_dropdown_item, spinnerArray); spinner.setAdapter(spinnerArrayAdapter); 

Теперь вторая строка (ArrayAdapter …) дает мне предупреждение в Eclipse, говорящее: "ArrayAdapter is a raw type... References to generic type ArrayAdapter<T> should be parameterized" , я понятия не имею, как это исправить (или что Что означает в первую очередь :)).

Это просто предупреждение, и приложение, похоже, работает хорошо, но я все равно хотел бы понять, что не так и исправить. Любой намек приветствуется.

Приветствия, Select0r

Solutions Collecting From Web of "Android: Создайте spinner программно из массива"

ArrayAdapter<String> должен работать.

то есть:

 Spinner spinner = new Spinner(this); ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, spinnerArray); //selected item will look like a spinner set from XML spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); spinner.setAdapter(spinnerArrayAdapter); 

Точно так же с массивом

 // Array of choices String colors[] = {"Red","Blue","White","Yellow","Black", "Green","Purple","Orange","Grey"}; // Selection of the spinner Spinner spinner = (Spinner) findViewById(R.id.myspinner); // Application of the Array to the Spinner ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, colors); spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); // The drop down view spinner.setAdapter(spinnerArrayAdapter); 

Это работало для меня со строковым массивом с именем « shoes », загружаемым из ресурсов проектов:

  Spinner spinnerCountShoes = (Spinner)findViewById(R.id.spinner_countshoes); ArrayAdapter<String> spinnerCountShoesArrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item, getResources().getStringArray(R.array.shoes)); spinnerCountShoes.setAdapter(spinnerCountShoesArrayAdapter); 

Это мой файл ресурсов ( res/values/arrays.xml ) с массивом строк:

  <?xml version="1.0" encoding="utf-8"?> <resources> <string-array name="shoes"> <item>0</item> <item>5</item> <item>10</item> <item>100</item> <item>1000</item> <item>10000</item> </string-array> </resources> 

С помощью этого метода проще сделать его многоязычным (если необходимо).

Это действительно сработало для меня

  Spinner spinner = new Spinner(this); ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>( this, android.R.layout.simple_spinner_item, spinnerArray); spinnerArrayAdapter.setDropDownViewResource( android.R.layout.simple_spinner_dropdown_item ); spinner = (Spinner) findViewById( R.id.spinner ); spinner.setAdapter(spinnerArrayAdapter); 

Эта работа для меня: –

 String[] array = {"A", "B", "C"}; String abc = ""; Spinner spinner = new Spinner(getContext()); ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(getContext(), android.R.layout.simple_spinner_item, array); //selected item will look like a spinner set from XML spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); spinner.setAdapter(spinnerArrayAdapter); 

Я использую фрагмент.