Всем добрый вечер. Я совсем недавно начал изучать Java. То есть я учу язык программирования и пытаюсь применять сразу всё на практике непосредственно на своих примерах. Естественно, сталкиваюсь с множеством проблем, но постепенно их решаю, конечно, не без помощи. В том числе и "жителей" этого сайта.
И сейчас вновь хочу Вас попросить мне помочь и объяснить пример кода, а возможно и предложить свой вариант.
Задача у меня следующая. Есть один RelativeLayout и Button а также переменная int n = 0. Мне необходимо сделать так, что бы по нажатию на кнопку менялся цвет Layout'а. Если бы было несколько кнопок то трудностей у меня не возникало бы, но я не как не пойму механизм реализации при одной кнопке. Признаюсь честно, я декомпилировал похожее приложение в учебных целях, и не как не могу разобрать некоторые непонятные мне моменты. Радует лишь одно, ход мысли был правильный.
Теперь к коду обработчиком OnClickListener выступает Activity далее привожу пример нажатия на кнопку
@Override
public void onClick(View v) {
switch (this.n) {
case 0:
rltLayout.setBackgroundColor(Color.GREEN);
this.n = 1;
return;
case 1:
rltLayout.setBackgroundColor(Color.RED);
this.n = 2;
return;
default:
break;
}
}
Для меня тут слишком много this, не могу понять, как работает этот код. Я не понимаю строку switch (this.n) понял бы если было бы switch (v.getID()) но по ID нам искать нечего. И совсем не понимаю this.n = 1;
return;