у меня есть ArraList, есть допустим 2 элемента.
Как программно отследить какой из radiobutton нажмет пользователь?
Знаю , что если использовать case, то нужно указывать id элемента в разметке, но я же создал программно,как быть? Как отследить нажатие?
Когда вы создаёте программно RadioButton, вы можете задать ему id. Можно, к примеру, записывать созданные кнопки в
ArrayList<RadioButton> list;
Тогда id кнопке можно задавать как размер списка:
RadioButton radioButton = new RadioButton(this);
// Задаём id
radioButton.setId(list.size());
list.add(radioButton);
radioGroup.addView(radioButton);
В onCreate задаём RadioGroup слушателя:
list = new ArrayList<RadioButton>();
radioGroup = (RadioGroup) findViewById(R.id.radioGroup);
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
//checkedId - индекс кнопки в ArrayList
RadioButton button = list.get(checkedId);
}
});
Уже в слушателе, зная id, можно обратиться к самой кнопке.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Здравствуйте, делаю веб приложение, дошло до сохранения и отображения фото в jspСохраняется, всё хорошо, но при отображении возникли проблемы,...
Хочу реализовать интерфейс Comparable, и с помощью него произвести сравнение (и последующую сортировку) элементов массива по полю типа LocalDateПриведенный...
Я думаю, что излишне будет писать код активитиКласс был успешно испытан на консоли Java
Как реализовать последовательный обход дерева на Java? (TreeSet)