Как получить радиокнопку из радиогруппы с помощью расширений kotlin android - PullRequest
0 голосов
/ 07 октября 2019

Я программно добавляю и удаляю радиокнопки из радиогруппы в моем фрагменте. OnCheckedChangeListener предоставляет ссылку на радиогруппу и целочисленный идентификатор проверенной радиопрограммы. Я могу получить ссылку на кнопку радио с помощью findViewById, но могу ли я сделать это с помощью расширений kotlin android?

class MyFragment: Fragment() {
    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
        radio_group.setOnCheckedChangeListener({ radioGroup: RadioGroup, i: Int ->

            // This may give index out of bounds exception
            someFunction((radioGroup[i-1] as RadioButton).text as String)

            // This works but I don't want to use findViewById
            val rb: RadioButton = radioGroup.findViewById(i) as RadioButton
            onRadioButtonSelect(rb.text as String)            
        })
    }
}

1 Ответ

0 голосов
/ 07 октября 2019

Расширения Kotlin - время компиляции. Тем не менее, вы ищете, чтобы найти идентификатор во время выполнения. Таким образом, вы не сможете использовать расширения kotlin с динамически добавленными переключателями

...