Android – 自定义微调控件外观和感觉

是否可以更改Android 微调控件小部件中 radio button的颜色。 默认情况下,它显示单选button的绿色。

我需要把它改成其他的颜色,这是可能的,怎么样?

  • 静态访问Android应用程序的资源?
  • 将BroadcastReceiver注册到Widget(Context对象的区别)
  • 启动配置活动时调用Widget onUpdate
  • 如何为Android中的Spinner设置错误消息?
  • 应用小部件不会出现在蜂窝设备上的小部件列表中,直到启动器重新启动
  • 将RemoteView转换为视图
  • dynamic设置线性布局背景
  • 设置包含的布局的子元素的属性
  • 我知道这是一个古老的问题,但现在呢…

    您将需要创build一个自定义的主题,并将其应用到您的微调的活动。

    首先,您需要为“新”收音机的选中/未选中状态创build图像,您只需从sdk的res/drawable-*文件夹中btn_radio_off.png给定的图像btn_radio_on.pngbtn_radio_off.png 。 编辑他们看看你想要的(如改变颜色或其他),并保存到您的项目。

    接下来,在res/values文件夹中创build一个新的xml文件,并添加以下内容:

     <resources> <style name="CustomSpinnerRadioTheme" parent="@android:style/Theme"> <item name="android:spinnerDropDownItemStyle">@style/EditedRadio</item> </style> <style name="EditedRadio" parent="@android:style/Widget.DropDownItem.Spinner"> <item name="android:checkMark">@drawable/edited_radio</item> </style> </resources> 

    然后,在res/drawable创build另一个名为edited_radio.xml xml文件,它应该包含以下内容:

     <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_checked="false" android:drawable="@drawable/btn_radio_off" /> <item android:state_checked="true" android:drawable="@drawable/btn_radio_on" /> </selector> 

    只要确保引用您编辑的图像的检查状态。 然后,您只需将CustomSpinnerRadioTheme应用到您的活动并运行!

    我发现一个很好的资源是应用样式和主题,尤其是Android样式(styles.xml)和Android主题(themes.xml)