Страница 1 из 1

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

Добавлено: 16 июн 2015, 18:29
piteriv
Здравствуйте!
При разработке приложения для 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;
}
}

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

Добавлено: 16 июн 2015, 18:39
Dark67
case R.id.txt:

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

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

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

Добавлено: 16 июн 2015, 20:35
Dark67
Если их много (глядя на цикл, аж целых 50), то может стоит подумать о ListView?

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

Добавлено: 16 июн 2015, 21:56
Foenix
Dark67 писал(а):Если их много (глядя на цикл, аж целых 50), то может стоит подумать о ListView?
Дипломат! ;)

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

Добавлено: 16 июн 2015, 22:48
doter.ua
piteriv писал(а):А если ..
Твой вопрос звучит так: "Как изучить программирование на сайте с уроками, не читая этих уроков?"