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

Обсуждение уроков
bonny
Сообщения: 3
Зарегистрирован: 05 май 2014, 18:21

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

Сообщение bonny » 07 авг 2016, 17:10

Ну я переделал. Посмотрел на одном ресурсе.

Я короче захотел сделать так.
В onClick для fab запускаю showAlertDialog
public void showAlertDialog(View v) {
LayoutInflater layoutInflater = getLayoutInflater(); //LayoutInflater.from(MainActivity.this)
View dialoglayout = layoutInflater.inflate(R.layout.dialog_layout, null);

AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(MainActivity.this);
alertDialogBuilder.setTitle("Новая задача на загрузку");
alertDialogBuilder.setView(dialoglayout);
alertDialogBuilder.setPositiveButton("Загрузить", myClickListener);
alertDialogBuilder.setNegativeButton("Отмена", myClickListener);

Spinner spinnerQ = (Spinner) dialoglayout.findViewById(R.id.spinnerQuality);
spinnerQ.setVisibility(View.GONE);

alertDialogBuilder.show();
}

В dialog_layout есть кнопка, при нажатие на которую onClick - goLinkClick.
public void goLinkClick(View v) {
LayoutInflater layoutInflater = getLayoutInflater(); //LayoutInflater.from(MainActivity.this)
View dialoglayout = layoutInflater.inflate(R.layout.dialog_layout, null);

Spinner spinnerQ = (Spinner) dialoglayout.findViewById(R.id.spinnerQuality);
spinnerQ.setVisibility(View.VISIBLE);

ArrayAdapter<String> adapter = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_spinner_item, spinnerQualityList);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

spinnerQ.setAdapter(adapter);
spinnerQ.setSelection(0); // Выделяем элемент по-умолчанию
}
Тут я хочу спиннер отобразить. Он изначально по задумке должен быть скрыт. Но ничего не происходит. Спиннер в таком же состоянии - GONE.
Что я не правильно делаю? Как правильно?

pabloid
Сообщения: 3
Зарегистрирован: 31 окт 2017, 17:46

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

Сообщение pabloid » 31 окт 2017, 17:51

Надеюсь форум еще живой)

Подскажите пожалуйста как изменить цвет текста в spinner? (Со стилями я пока не знаком).

pabloid
Сообщения: 3
Зарегистрирован: 31 окт 2017, 17:46

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

Сообщение pabloid » 01 ноя 2017, 18:33

pabloid писал(а):Надеюсь форум еще живой)

Подскажите пожалуйста как изменить цвет текста в spinner? (Со стилями я пока не знаком).
Сам нашел ответ, тут три простых шага:

1) Создаем в папке layout xml resourse file (например my_spinner_item.xml)

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

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/textViewSpinnerItem"
    style="@style/SpinnerTextViewItem"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@android:color/holo_orange_dark"
    android:textAllCaps="false"
    android:textColor="@android:color/holo_green_dark"
    android:textSize="24sp"
    android:textStyle="bold|italic" />
В нем настраиваем Text view как нам удобно. Так же важно указать стиль который создадим на 3 шаге.

2) В MainActivity при создании адаптера указываем

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

 ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.my_spinner_item, data);
3) В файле values/styles.xml добавляем стиль

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

<style name="SpinnerTextViewItem" parent="@android:style/Widget.TextView" >
       
    </style>
Как я понял можно напрямую в стиле указать параметры, например

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

<style name="SpinnerTextViewItem" parent="@android:style/Widget.TextView" >
        <item name="android:textSize" >8dp</item>
        <item name="android:textStyle" >bold</item>
    </style>
Вот такие пироги)

JackLeach1
Сообщения: 5
Зарегистрирован: 10 сен 2021, 11:40

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

Сообщение JackLeach1 » 28 ноя 2021, 14:24

Hello.
I just recently started to deal with android, so not everything is clear yet.
Question: why does the setOnItemSelectedListener event occur immediately after initialization of the application, and not directly when the list is "selected".
Those. I want the value of the selected list item to appear in the required text field, and it gets immediately "item = 0" after loading the application.
Thanks.

Ответить