Android:如何使用RadioButton的当前主题获取可绘制的按钮?

时间:2015-11-14 07:42:47

标签: java android radio-button themes drawable

我在RecyclerView.Adapter的onBindViewHolder内更改了RadioButton的按钮drawable,用于某些条件。

radioButton.setButtonDrawable(android.R.color.transparent);

现在,如何恢复原始按钮可绘制?因为当我们滚动时,视图持有者保持旧按钮可绘制(透明)的其他项目。

这就是我的尝试:

radioButton.setButtonDrawable(ContextCompat.getDrawable(mContext, android.R.drawable.radiobutton_off_background));

但结果如下:

enter image description here

而不是像这样的原始版本:

enter image description here

它没有应用主题。

2 个答案:

答案 0 :(得分:1)

尝试使用?android:attr/listChoiceIndicatorSingle

答案 1 :(得分:0)

  

仅适用于 api 21级或以上

<RadioButton
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/radio"
    android:checked="true"
    android:buttonTint="@color/your_color"/>
  

values / colors.xml 在这种情况下将您的颜色设置为带红色的颜色:

<color name="your_color">#e75748</color>

结果:

optionbotton