Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
ersin
1 / 1 / 1
Регистрация: 14.02.2013
Сообщений: 134
1

Android зависимые спайнеры

03.06.2016, 14:24. Просмотров 246. Ответов 12
Метки нет (Все метки)

Имеется два спайнера. В первом спайнере название регионов, во втором должен быть список городов, который должен изменяться в зависимости от выбранного региона.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.06.2016, 14:24
Ответы с готовыми решениями:

Откуда берутся атрибуты android:layout_width и android:layout_height в элементе LinearLayout?
Недавно начал изучать Android API, а сегодня более менее разобрал основы...

Не предлагается установка Android SDK при установке Android Studio
на сайте https://developer.android.com/studio/... скачал exeшник для...

Ошибка: Caused by Android java.lang.ClassCastException: android.app.Application cannot be cast
Здравствуйте. Очень нужен ваш совет. При запуске приложения появляется ошибка:...

Android studio, как запускать программу сразу на android смартфоне подключенному к usb?
android studio, как запускать программу сразу на android смартфоне...

Ошибка в Android Studio Error:No resource identifier found for attribute 'appComponentFactory' in package 'android'
Доброго времени суток! При компиляции андроид приложении выходит данная...

12
Guliash
93 / 93 / 14
Регистрация: 11.11.2010
Сообщений: 424
03.06.2016, 14:44 2
А в чём проблема? Слушайте события первого, обновляйте контент второго.
0
Pablito
2767 / 2198 / 744
Регистрация: 12.05.2014
Сообщений: 7,711
Завершенные тесты: 1
03.06.2016, 14:45 3
ты врешь, нет никаких спайнеров
0
ersin
1 / 1 / 1
Регистрация: 14.02.2013
Сообщений: 134
03.06.2016, 14:50  [ТС] 4
Цитата Сообщение от Guliash Посмотреть сообщение
А в чём проблема? Слушайте события первого, обновляйте контент второго.
Вот спайнеры ! Тут ошибка: ArrayAdapter.createFromResource
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
spinnerObl.setOnItemSelectedListener(new OnItemSelectedListener(){
 
            @Override
            public void onItemSelected(AdapterView<?> parent, View view, final int position, long id) {
                // TODO Auto-generated method stub
                //ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.Akmola, android.R.layout.simple_spinner_item);
                
 
                ArrayAdapter<?> adapter = ArrayAdapter.createFromResource(this, R.array.Akmola, android.R.layout.simple_spinner_item);
                adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                spinnerCity.setAdapter(adapter); 
            }
 
            @Override
            public void onNothingSelected(AdapterView<?> parent) {
                // TODO Auto-generated method stub
                
            }});
        
        
            ArrayAdapter<?> adapter = ArrayAdapter.createFromResource(this, R.array.Akmola, android.R.layout.simple_spinner_item);
            adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
            spinnerCity.setAdapter(adapter);
0
Guliash
93 / 93 / 14
Регистрация: 11.11.2010
Сообщений: 424
03.06.2016, 14:51 5
Приведите stacktrace ошибки.
1
ersin
1 / 1 / 1
Регистрация: 14.02.2013
Сообщений: 134
03.06.2016, 14:55  [ТС] 6
Цитата Сообщение от Guliash Посмотреть сообщение
Приведите stacktrace ошибки.
The method createFromResource(Context, int, int) in the type ArrayAdapter is not applicable for the arguments (new AdapterView.OnItemSelectedListener(){}, int, int)
0
Guliash
93 / 93 / 14
Регистрация: 11.11.2010
Сообщений: 424
03.06.2016, 14:57 7
Java
1
ArrayAdapter.createFromResource(this, R.array.Akmola, android.R.layout.simple_spinner_item);
Вот тут this будет не Context, а AdapterView.OnItemSelectedListener, так как вы вызываете внутри анонимного класса.

Если у вас активити то сделайте так:
Java
1
ArrayAdapter.createFromResource(YourActivity.this, R.array.Akmola, android.R.layout.simple_spinner_item);
1
ersin
1 / 1 / 1
Регистрация: 14.02.2013
Сообщений: 134
03.06.2016, 15:06  [ТС] 8
Цитата Сообщение от Guliash Посмотреть сообщение
Java
1
ArrayAdapter.createFromResource(this, R.array.Akmola, android.R.layout.simple_spinner_item);
Вот тут this будет не Context, а AdapterView.OnItemSelectedListener, так как вы вызываете внутри анонимного класса.

Если у вас активити то сделайте так:
Java
1
ArrayAdapter.createFromResource(YourActivity.this, R.array.Akmola, android.R.layout.simple_spinner_item);
Теперь второй спайнер изменяется при запуске диалога. Кстати спайнеры находятся внутри диалога забыл написать.
Вот с этим вариантом:
Java
1
ArrayAdapter.createFromResource(YourActivity.this, R.array.Akmola, android.R.layout.simple_spinner_item);
.
0
Guliash
93 / 93 / 14
Регистрация: 11.11.2010
Сообщений: 424
03.06.2016, 15:10 9
без полного кода, я не могу понять, где может быть проблема.
1
ersin
1 / 1 / 1
Регистрация: 14.02.2013
Сообщений: 134
03.06.2016, 15:15  [ТС] 10
Цитата Сообщение от Guliash Посмотреть сообщение
без полного кода, я не могу понять, где может быть проблема.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
final Dialog dialog = new Dialog(All.this);
        dialog.setContentView(R.layout.layout_dialogbox);
        dialog.setTitle("Добавить услугу");
 
        
        
        final Spinner spinnerObl = (Spinner)dialog.findViewById(R.id.spinner2);
        final Spinner spinnerCity = (Spinner)dialog.findViewById(R.id.spinner3);
 
        
        
        
         
 
                     spinnerObl.setOnItemSelectedListener(new OnItemSelectedListener(){
 
            @Override
            public void onItemSelected(AdapterView<?> parent, View view, final int position, long id) {
                // TODO Auto-generated method stub
                //ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.Akmola, android.R.layout.simple_spinner_item);
                если позиция 5 то  {
                ArrayAdapter<?> adapter = ArrayAdapter.createFromResource(this, R.array.UKO, android.R.layout.simple_spinner_item);
                adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                spinnerCity.setAdapter(adapter);}
                             иначе если выбрано Х то.......
 
            }
 
            @Override
            public void onNothingSelected(AdapterView<?> parent) {
                // TODO Auto-generated method stub
                
            }});
Примерно такой алгоритм действий.
0
Guliash
93 / 93 / 14
Регистрация: 11.11.2010
Сообщений: 424
03.06.2016, 15:19 11
Сформулируйте проблему точнее.
Запускается диалог и spinnerCity отображает не то что должен?
1
ersin
1 / 1 / 1
Регистрация: 14.02.2013
Сообщений: 134
03.06.2016, 15:22  [ТС] 12
Цитата Сообщение от Guliash Посмотреть сообщение
Сформулируйте проблему точнее.
Запускается диалог и spinnerCity отображает не то что должен?
Отображает,но не при изменении spinnerObl, а при запуске диалога. Вообще нужно изменять spinnerCity в зависимости от позиции spinnerObl.
0
Guliash
93 / 93 / 14
Регистрация: 11.11.2010
Сообщений: 424
03.06.2016, 15:27 13
Попробуйте поставить лог в onItemSelected, вызывается ли он и с нужной позицией?
1
03.06.2016, 15:27
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.06.2016, 15:27

Android NDK. Как пользоваться? Когда стоит использовать его вместо Android SDK?
Можно ли писать в нем готовые приложения Android?

Как приложение Android написать на С++ в Android NDK, чтоб получить *.apk? Нужен мануал
Уже не в первый раз задаю вопрос. Молчание. В лучшем случае - &quot;RTFM&quot; и точка....

Android.support.v4.app.FragmentActivity не работает в Android Studio
объясните пожалуйста,как в андроид студио добавить вышеуказанную...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru