Я устанавливаю метод onClick
программно или в файл xml, я не знаю, как я могу передать через него дополнительные параметры. В следующем коде:Как я могу позволить 6 кнопкам вызывать один и тот же метод с разными параметрами в Android?
for (int i = 0; i < 6; i++) {
rollView[i].setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
changeKeepRoll(i);
}
});
}
Я Установка onClickListener
для 6 различных TextView
с и я хочу, чтобы вызвать метод changeKeepRoll
, который принимает целочисленный параметр в качестве входных данных, но я получаю ошибку «Variable„я“ доступ изнутри внутреннего класса, должен быть объявлен окончательным ». Что это значит и как я могу это исправить?
У Java есть правило: если вы используете анонимный внутренний класс для создания объекта, любая переменная, используемая внутри, должна быть либо объявлена внутри этого блока, либо если вы хотите использовать переменную извне блока, объект должен быть окончательный или эффективный окончательный (java 8) – Kushan