Android: изменение стиля RadioButtons программно - PullRequest
0 голосов
/ 09 июня 2011

как я могу изменить фоновое изображение RadioButtons в выбранном состоянии.Я использовал код для checkBoxes, и он работает, но для RadioButtons не работает.Вот мой фрагмент кода:

RadioGroup radioGroup = new RadioGroup(context);
for ( int i = 0; i < lst.size(); i++ ){
    // Radiobuttons 
    RadioButton radioButton = new RadioButton(context);
    radioButton.setId(i);
    radioButton.setButtonDrawable(myDrawable);
    radioButton.setText(myTxt);
    radioGroup.addView(radioButton, i, layoutParams);

}

this.addView(radioGroup); 

@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
    StateListDrawable myStates = new StateListDrawable();
    int stateSelected = android.R.attr.state_selected;
    myStates.addState(new int[]{ -stateSelected }, myDrawable2);

    RadioButton  r = (RadioButton) group.getChildAt(checkedId);
    r.setButtonDrawable(myStates);
}

1 Ответ

1 голос
/ 09 июня 2011

Вы можете использовать нарисованный список состояний , который определяет различные фоновые изображения в зависимости от состояния виджета.Вы можете сделать это вместо программного изменения фонового ресурса.

Учебное пособие по этому вопросу можно найти здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...