Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

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

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

29.03.2015, 17:09. Просмотров 650. Ответов 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')
Подскажите как правильно сделать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.03.2015, 17:09
Здравствуйте! Я подобрал для вас темы с ответами на вопрос В зависимости от позиции Spinner-а менять текст в TextView (Программирование Android):

Как каждую секунду менять текст TextView? - Программирование Android
Подскажите, пожалуйста, как каждую секунду в течение 1,5 минуты менять текст в TextView?

Текст из TextView перенести в другой TextView по нажатию Button - Программирование Android
Люди, помогите плиз. Недавно начал ковырять программирование под Android. Хотел сделать банальную вещь - текст из TextView перенести в...

Сохранение позиции spinner - Программирование Android
На фрагменте есть несколько спиннеров. При переходе на другой фрагмент, а потом вернутся на фрагмент со спиннерами все сбрасывается на...

Как автоматически изменять размер текста в spinner в зависимости от размера экрана? - Программирование Android
Здравствуйте. В программе использую две темы светлую и темную: &lt;style name=&quot;BlackTheme&quot; parent=&quot;android:style/Theme.Holo&quot;&gt; &lt;item...

Ширина TextView в зависимости от наполнения его текстом - Программирование Android
Есть виджет. На нем TextView. В нем строки разделенные символом новой строки. Пока, я чисто по кол-ву символов определяю сколько уместилось...

Можно ли в spinner вставить статичный текст - Программирование Android
Можно ли в spinner вставить статичный текст (select:), что бы он отображался непосредственно постоянно перед выбранным элементом? ...

6
dajver
409 / 273 / 18
Регистрация: 18.09.2010
Сообщений: 1,112
29.03.2015, 17:13 #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;
}
0
qdhtnsoyndtr
5 / 5 / 1
Регистрация: 29.11.2013
Сообщений: 466
29.03.2015, 17:16  [ТС] #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;
}
ошибку выдает при смене позиции
0
dajver
409 / 273 / 18
Регистрация: 18.09.2010
Сообщений: 1,112
29.03.2015, 17:17 #4
Java
1
textLang
Проинициализирован? типа
Java
1
TextView textLang = (TextView) findViewById(R.id.textLang)
0
qdhtnsoyndtr
5 / 5 / 1
Регистрация: 29.11.2013
Сообщений: 466
29.03.2015, 17:20  [ТС] #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) {
            }
        });
    }
0
dajver
409 / 273 / 18
Регистрация: 18.09.2010
Сообщений: 1,112
29.03.2015, 17:22 #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, возможно оно у вас там другое
1
qdhtnsoyndtr
5 / 5 / 1
Регистрация: 29.11.2013
Сообщений: 466
29.03.2015, 17:28  [ТС] #7
dajver, Спасибо)) заработало)
0
29.03.2015, 17:28
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.03.2015, 17:28
Привет! Вот еще темы с ответами:

Цветной текст в textview - Программирование Android
Вся фишка в том, чтобы установить текст не для строковой переменной, а для конкретной фразы. Т.е. к примеру фраза &quot;Привет. Как дела?&quot;. Все...

Не изменяется текст в TextView - Программирование Android
...А возможно беда в чем - то другом Собственно простецкая программа. Не могу и проверить на работоспособность, т.к все хорошо, но при...

Как отформатировать текст в TextView - Программирование Android
Как добавить в один textview текст, по-разному его отформатировав? Например,часть текста жирная, а часть курсивом. Спасибо.

Как у TextView задать текст? - Программирование Android
как у TextView задать текст? я так понимаю методом setText? (кстати а что в java нет свойств?) я попробовал просто через setText, но почему...


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

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

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