Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
qdhtnsoyndtr
5 / 5 / 1
Регистрация: 29.11.2013
Сообщений: 466
#1

В зависимости от позиции Spinner-а менять текст в TextView - Программирование Android

29.03.2015, 17:09. Просмотров 526. Ответов 6
Метки нет (Все метки)

Здравствуйте, только познаю андроид, так что сильно не ругайте.
Создал спинер, его задача в зависимости от позиции менять текст в TextView
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
34
35
36
37
38
39
40
// Получаем экземпляр элемента Spinner
        final Spinner spinner = (Spinner)findViewById(R.id.spinner);
 
        /*// Настраиваем адаптер
        ArrayAdapter<?> adapter =
                ArrayAdapter.createFromResource(this, R.array.animals, android.R.layout.simple_spinner_item);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);*/
 
        // адаптер
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, data);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
 
        // заголовок
        spinner.setPrompt("Заголовок");
 
        // Вызываем адаптер
        spinner.setAdapter(adapter);
 
        spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
            @Override
            public void onItemSelected(AdapterView<?> parent, View view, int position, long id)
            {
                // показываем позиция нажатого элемента
                Toast.makeText(getBaseContext(), "Position = " + position, Toast.LENGTH_SHORT).show();
 
 
                if(position == '0')
                {
                    textLang.setText("1");
                }else
                {
                    textLang.setText("2");
                }
            }
 
            @Override
            public void onNothingSelected(AdapterView<?> arg0) {
            }
        });
    }
Думаю накосячил в
Java
1
if(position == '0')
Подскажите как правильно сделать?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.03.2015, 17:09     В зависимости от позиции Spinner-а менять текст в TextView
Посмотрите здесь:
Android Как каждую секунду менять текст TextView?
Android Сохранение позиции spinner
Android Как автоматически изменять размер текста в spinner в зависимости от размера экрана?
Ширина TextView в зависимости от наполнения его текстом Android
Можно ли в spinner вставить статичный текст Android
Не изменяется текст в TextView Android
Android Цветной текст в textview
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dajver
407 / 271 / 18
Регистрация: 18.09.2010
Сообщений: 1,106
29.03.2015, 17:13     В зависимости от позиции Spinner-а менять текст в TextView #2
Java
1
if(position == 0)
position же int, а вы пытаетесь его со строкой сравнять

Добавлено через 1 минуту
и лучше использовать switch для таких действий.

Java
1
2
3
4
5
6
7
8
switch(position) {
case 1:
//some function
break;
case 2:
//some function
break;
}
qdhtnsoyndtr
5 / 5 / 1
Регистрация: 29.11.2013
Сообщений: 466
29.03.2015, 17:16  [ТС]     В зависимости от позиции Spinner-а менять текст в TextView #3
dajver, пробовал, все равно не работает, да же приложение не запускается, но компилируется

Добавлено через 2 минуты
Цитата Сообщение от dajver Посмотреть сообщение
Код Java(TM) 2 Platform Standard Edition 5.0
1
2
3
4
5
6
7
8
switch(position) {
case 1:
//some function
break;
case 2:
//some function
break;
}
ошибку выдает при смене позиции
dajver
407 / 271 / 18
Регистрация: 18.09.2010
Сообщений: 1,106
29.03.2015, 17:17     В зависимости от позиции Spinner-а менять текст в TextView #4
Java
1
textLang
Проинициализирован? типа
Java
1
TextView textLang = (TextView) findViewById(R.id.textLang)
qdhtnsoyndtr
5 / 5 / 1
Регистрация: 29.11.2013
Сообщений: 466
29.03.2015, 17:20  [ТС]     В зависимости от позиции Spinner-а менять текст в TextView #5
ой, сначало case не те числа были, сейчас поставил 0 и 1, опять перестал запускаться

Добавлено через 2 минуты
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
    TextView textLang = (TextView) findViewById(R.id.textLang);
    private Spinner spinner;
 
    final int MENU_QUIT_ID = 1;
 
    /*
    String strChoose = spinner.getSelectedItem().toString();
    textMetrViz.setText(strChoose); // выводим выбранный пункт в TextView
    */
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        String[] data = {"RUS", "ENG"};
 
 
 
        //spinner.setSelection(1);
 
        // Получаем экземпляр элемента Spinner
        final Spinner spinner = (Spinner)findViewById(R.id.spinner);
 
        /*// Настраиваем адаптер
        ArrayAdapter<?> adapter =
                ArrayAdapter.createFromResource(this, R.array.animals, android.R.layout.simple_spinner_item);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);*/
 
        // адаптер
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, data);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
 
        // заголовок
        spinner.setPrompt("Заголовок");
 
        // Вызываем адаптер
        spinner.setAdapter(adapter);
 
        spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
            @Override
            public void onItemSelected(AdapterView<?> parent, View view, int position, long id)
            {
                // показываем позиция нажатого элемента
                Toast.makeText(getBaseContext(), "Position = " + position, Toast.LENGTH_SHORT).show();
 
 
                switch(position) {
                    case 0:
                        textLang.setText("1");
                        break;
                    case 1:
                        textLang.setText("2");
                        break;
                }
            }
 
            @Override
            public void onNothingSelected(AdapterView<?> arg0) {
            }
        });
    }
dajver
407 / 271 / 18
Регистрация: 18.09.2010
Сообщений: 1,106
29.03.2015, 17:22     В зависимости от позиции Spinner-а менять текст в TextView #6
Всю инфу по ошибке из Log'а напишите сюда.

Добавлено через 59 секунд
Вы товарищ - извращенец
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
TextView textLang;
    private Spinner spinner;
 
    final int MENU_QUIT_ID = 1;
 
    /*
    String strChoose = spinner.getSelectedItem().toString();
    textMetrViz.setText(strChoose); // выводим выбранный пункт в TextView
    */
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        String[] data = {"RUS", "ENG"};
 
         textLang = (TextView) findViewById(R.id.textLang);
 
        //spinner.setSelection(1);
 
        // Получаем экземпляр элемента Spinner
        final Spinner spinner = (Spinner)findViewById(R.id.spinner);
 
        /*// Настраиваем адаптер
        ArrayAdapter<?> adapter =
                ArrayAdapter.createFromResource(this, R.array.animals, android.R.layout.simple_spinner_item);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);*/
 
        // адаптер
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, data);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
 
        // заголовок
        spinner.setPrompt("Заголовок");
 
        // Вызываем адаптер
        spinner.setAdapter(adapter);
 
        spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
            @Override
            public void onItemSelected(AdapterView<?> parent, View view, int position, long id)
            {
                // показываем позиция нажатого элемента
                Toast.makeText(getBaseContext(), "Position = " + position, Toast.LENGTH_SHORT).show();
 
 
                switch(position) {
                    case 0:
                        textLang.setText("1");
                        break;
                    case 1:
                        textLang.setText("2");
                        break;
                }
            }
 
            @Override
            public void onNothingSelected(AdapterView<?> arg0) {
            }
        });
    }
Добавлено через 1 минуту
textLang - имя вашего textView в activity_main, возможно оно у вас там другое
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.03.2015, 17:28     В зависимости от позиции Spinner-а менять текст в TextView
Еще ссылки по теме:
Как отформатировать текст в TextView Android
Как у TextView задать текст? Android
Android Не получается вставить текст в TextView
Android Не изменяется текст в TextView при звонке
Отображать в textView текст из файла txt Android

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

Или воспользуйтесь поиском по форуму:
qdhtnsoyndtr
5 / 5 / 1
Регистрация: 29.11.2013
Сообщений: 466
29.03.2015, 17:28  [ТС]     В зависимости от позиции Spinner-а менять текст в TextView #7
dajver, Спасибо)) заработало)
Yandex
Объявления
29.03.2015, 17:28     В зависимости от позиции Spinner-а менять текст в TextView
Ответ Создать тему
Опции темы

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