Страница 3 из 6

Re: Урок 56. Spinner – выпадающий список

Добавлено: 10 дек 2012, 11:30
Wa1deMar
подскажите как сделать чтобы в спиннере на самой кнопке был один текст, а в открывшемся списке другой? Если быть точнее то мне надо чтобы в списке были названия языков, а на самой кнопке их код (en, ru, ...)

Re: Урок 56. Spinner – выпадающий список

Добавлено: 12 янв 2013, 14:26
Foenix
Скажите, а что представляет собой simple_spinner_item и simple_spinner_dropdown_item в этом уроке?

Re: Урок 56. Spinner – выпадающий список

Добавлено: 12 янв 2013, 16:42
Finch
android.R.layout.simple_spinner_item, android.R.layout.simple_spinner_dropdown_item - это лэйауты созданые гугловцами =) лежат они глубоко в ресурсах =)

Список всех лэйаутов http://developer.android.com/reference/ ... ayout.html
Тут ваще все http://developer.android.com/reference/android/R.html

Re: Урок 56. Spinner – выпадающий список

Добавлено: 12 янв 2013, 18:45
Foenix
Спасибо!

Re: Урок 56. Spinner – выпадающий список

Добавлено: 28 янв 2013, 20:32
Parfiry
Здравствуйте! Давно сижу на вашем проекте. Дошел вот до 56 урока. Отписываюсь, впервые. Поэтому хочется поблагодарить автора за гигантскую проделанную работу и просто потрясающий проект. Лучшее для новичков из того, на что я натыкался. Спасибо!
А теперь вопрос: подскажите, пожалуйста, почему абсолютно одинаково заданные спиннеры на эмуляторе выглядят по разному?
первый спиннер

Код: Выделить всё

		String sexString[] = {"male", "female"};
		
		ArrayAdapter<String> adapterspSex = new ArrayAdapter<String>(this, 
				android.R.layout.simple_spinner_item, sexString);
		adapterspSex.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
		
		Spinner spSex = (Spinner) findViewById(R.id.spSex);
		spSex.setAdapter(adapterspSex);
		
		spSex.setPrompt("M/F");
второй спиннер

Код: Выделить всё

				String lookForString[] = {"male","female"};
								
				ArrayAdapter<String> adapterspLookFor = new ArrayAdapter<String>(this, 
						android.R.layout.simple_spinner_item, lookForString);
				adapterspAge.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
				
				Spinner spLookFor = (Spinner) findViewById(R.id.spLookFor);
				spLookFor.setAdapter(adapterspLookFor);
				
				spLookFor.setPrompt("Look for:");
В эмуляторы спиннеры выглядят вот так:
Изображение

и вот так:
Изображение

Нужно, чтобы оба спиннера выглядели как первый. В чем может быть проблема?

Re: Урок 56. Spinner – выпадающий список

Добавлено: 30 янв 2013, 15:28
damager82
Для adapterspLookFor не был вызван setDropDownViewResource.
У вас там ошибка копипаста )

Re: Урок 56. Spinner – выпадающий список

Добавлено: 30 янв 2013, 18:15
Parfiry
Да, все встало на место! Спасибо! Прощу прощения, за свою невнимательность.

Re: Урок 56. Spinner – выпадающий список

Добавлено: 12 мар 2013, 09:01
beeline09
Скажите пожалуйста, а как можно отфильтровать данные попадающие в спинер, чтоб они не повторялись?
Заполняю спиннер так:

Код: Выделить всё

ArrayList<String> list = new ArrayList<String>();
Spinner date_arhiv = (Spinner) findViewById(R.id.spinner_chislo);
final Cursor c1 = db.query("Data", null, null, null, null, null, null);
c1.moveToFirst();
	if (c1.getCount() > 0) {
		while (true) {
                list.add(c1.getString(0).toString());
                                 }
                if (!c1.moveToNext())
		break;
			}
c1.close();
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
				android.R.layout.simple_spinner_item, list);
		adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
		date_arhiv.setAdapter(adapter);

Re: Урок 56. Spinner – выпадающий список

Добавлено: 12 мар 2013, 12:53
Foenix
так нужно всписывать в запрос параметр DISTINCT

Re: Урок 56. Spinner – выпадающий список

Добавлено: 12 мар 2013, 13:17
beeline09
Olivka писал(а):так нужно всписывать в запрос параметр DISTINCT
А можно по подробнее? Я не очень понимаю, что мне даст дистинкт... Мне нужно получить все строки из столбца data, но если некоторые из них совпадают с предыдущими, то отсеивать их....

UPD: Все. Понял. Спасибо большое! Работает.

Re: Урок 56. Spinner – выпадающий список

Добавлено: 12 мар 2013, 14:07
Foenix
обычно ответ приходит в голову немного спустя как только его сформулируешь))

Re: Урок 56. Spinner – выпадающий список

Добавлено: 12 мар 2013, 14:14
beeline09
Olivka писал(а):обычно ответ приходит в голову немного спустя как только его сформулируешь))
Эт точно )))) И причем это далеко не в первый раз...
Сейчас у меня другой вопрос возник, но кажется я уже знаю ответ ))))
У меня в столбце data выводится дата в строковом формате вида "26 Мая 1989 г.". Чтобы мне отсортировать дату, по видимому необходимо перед преобразованием даты телефона в формат "26 Мая 1989 г.", сложить день месяц и год в integer и добавить поле в таблицу, по которому все будет сортироваться? Это верное решение или есть еще лучше? :-)

Re: Урок 56. Spinner – выпадающий список

Добавлено: 12 мар 2013, 14:33
Foenix
Не стоило вообще хранить дату в данном формате. В данный формат нужно приводить дату при выводе на экран (я делаю при помощи объекта Calendar).. А хранить в том виде, чтоб было легко сортировать, делать операции с датой.. В случае с sqlite даже не знаю.. я бы взяла формат например такой '20091231' Можно другой удобный, но уж точно не с наименованием месяца по-русски.

Re: Урок 56. Spinner – выпадающий список

Добавлено: 12 мар 2013, 14:44
beeline09
Olivka писал(а):я бы взяла формат например такой '20091231' Можно другой удобный, но уж точно не с наименованием месяца по-русски.
Точно! Другого и не надо! А при вытаскивании из базы, преобразовывать в удобочитаемый String ))) Спасибо большое!

Re: Урок 56. Spinner – выпадающий список

Добавлено: 12 мар 2013, 16:00
rezak90
дату всегда надо смотреть в long в милисеках, преобразовывайте в милисеки и сортируйте просто числа и будет вам сортировка по датам, 3 строки дела

Re: Урок 56. Spinner – выпадающий список

Добавлено: 12 мар 2013, 16:40
Foenix
Это тоже выход, просто если хранить в м-сек, то будет нечитаемо в базе для человека.

Re: Урок 56. Spinner – выпадающий список

Добавлено: 12 мар 2013, 20:37
rezak90
Olivka писал(а):Это тоже выход, просто если хранить в м-сек, то будет нечитаемо в базе для человека.
зато универсально если нужно отображать в разных таймзонах/локалях

Re: Урок 56. Spinner – выпадающий список

Добавлено: 12 мар 2013, 22:15
Foenix
Вообще-то не более универсально, чем я предложила
Можно еще вот так

Код: Выделить всё

 Cursor cursor = database.rawQuery(
         "SELECT item_id AS _id," +
         " (strftime('%s', added_on) * 1000) AS added_on," +
         " added_by, quantity, units" +
         " FROM current_list", new String[0]);
 long millis = cursor.getLong(cursor.getColumnIndexOrThrow("added_on"));
 Date addedOn = new Date(millis);

Re: Урок 56. Spinner – выпадающий список

Добавлено: 27 июн 2013, 01:48
Alexander131700
Добрый день подскажите пожалуйста можно ли (если можно то оптимальный способ) сделать список из спиннеров?
Спасибо большое.

Re: Урок 56. Spinner – выпадающий список

Добавлено: 27 июн 2013, 09:19
Foenix
в свою строку списка можно что угодно пихать, ты пропустил, это было в 54 уроке
Только практической ценности не вижу, лучше сделать список-дерево может?