У меня есть код ниже, чтобы использовать переключатель и получить значение и вернуть его в виде строки для функции. Надеюсь, что я мог бы использовать его в другом месте в основной программе. Однако это не так. это позволило бы мне использовать переменную btn
, и если я сделал предложение atl-enter
, объявив его final string []
, оно вернет ноль. В большинстве онлайн-уроков и в стеке предыдущий вопрос включает в себя только поджаривание текста из выбранной кнопки в пределах onCheckedChanged
.
public String listeneronbutton() {
String btn;
radioGroup = (RadioGroup) findViewById(R.id.radioGroup);
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup radioGroup, int checkedID) {
int selectedId = radioGroup.getCheckedRadioButtonId();
radioButton = (RadioButton) findViewById(checkedID);
Toast.makeText(getApplicationContext(), radioButton.getText(), Toast.LENGTH_SHORT).show();
btn = String.valueOf(radioButton.getText()); //(error here: variable 'btn' is accessed from within inner class, needs to be declared final)
}
});
return btn;
}
Как мне получить функцию listeneronbutton()
, способную правильно получить и вернуть btn
значение?