Как определить нажатый View-элемент

Интерфейс, диалоги, темы, стили, меню
Ответить
Аватара пользователя
piteriv
Сообщения: 58
Зарегистрирован: 03 янв 2015, 00:16
Откуда: Москва
Контактная информация:

Как определить нажатый View-элемент

Сообщение piteriv » 16 июн 2015, 18:29

Здравствуйте!
При разработке приложения для Android в коде я присвоил Activity обработчик события по нажатию на флажок или на поле вода текста.
Как определить на каком из выше указанных View-элементов произошло нажатие?
С помощью конструкции switch при выводе значения передаваемого в обработчик в какое-нибудь текстовое поле выдаёт false?

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

TextView txt;
EditText dec;
CheckBox f0;

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        txt = (TextView)findViewById(R.id.txt);
        dec = (EditText)findViewById(R.id.dec);
        f0 = (CheckBox)findViewById(R.id.f0);

        dec.setOnClickListener(this);
        f0.setOnClickListener(this);
}

@Override
	public void onClick(View arg0) {
             switch(arg0.getId){
             case txt:
                  txt.setText(dec);
                  break;
}
}
Последний раз редактировалось piteriv 16 июн 2015, 18:42, всего редактировалось 1 раз.

Dark67
Сообщения: 72
Зарегистрирован: 23 июл 2012, 23:11

Re: Как определить нажатый View-элемент

Сообщение Dark67 » 16 июн 2015, 18:39

case R.id.txt:

Аватара пользователя
piteriv
Сообщения: 58
Зарегистрирован: 03 янв 2015, 00:16
Откуда: Москва
Контактная информация:

Re: Как определить нажатый View-элемент

Сообщение piteriv » 16 июн 2015, 20:09

А если View-элементов много, например флажок то как их перебирать в цикле чтобы неписать чтение или запись в них значений в отдельных строках?
Вроде такого:
int summa;
for(int i = 0; i<50; i++) {
summa = summa+R.id.;
}

Dark67
Сообщения: 72
Зарегистрирован: 23 июл 2012, 23:11

Re: Как определить нажатый View-элемент

Сообщение Dark67 » 16 июн 2015, 20:35

Если их много (глядя на цикл, аж целых 50), то может стоит подумать о ListView?

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Как определить нажатый View-элемент

Сообщение Foenix » 16 июн 2015, 21:56

Dark67 писал(а):Если их много (глядя на цикл, аж целых 50), то может стоит подумать о ListView?
Дипломат! ;)
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
doter.ua
Сообщения: 1106
Зарегистрирован: 23 ноя 2013, 16:08
Откуда: Ukraine

Re: Как определить нажатый View-элемент

Сообщение doter.ua » 16 июн 2015, 22:48

piteriv писал(а):А если ..
Твой вопрос звучит так: "Как изучить программирование на сайте с уроками, не читая этих уроков?"
Семь раз отмерь - поставь студию.
Эклипс не студия, ошибка вылетит - не исправишь.
Скажи мне кто твой друг, и оба поставили студию.
Студия - свет, а эклипс - тьма.

Ответить