如何改变切换button的颜色?

可能重复:
改变开关的“开”颜色

当它从Green(true)改变为Red(false)时,我需要改变ToggleButton颜色。 我怎样才能改变ToggleButton颜色?

Solutions Collecting From Web of "如何改变切换button的颜色?"

在res / values文件夹中创build一个名为colors.xml的xml:

 <?xml version="1.0" encoding="utf-8"?> <resources> <color name="red">#ff0000</color> <color name="green">#00ff00</color> </resources> 

在drawable文件夹中,创build一个xml文件my_btn_toggle.xml:

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

并在xml部分定义您的切换button:

 <ToggleButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="New ToggleButton" android:id="@+id/toggleButton" android:background="@drawable/my_btn_toggle"/> 
 ToggleButton Btn=new ToggleButton(this);// or get it from the layout by ToggleButton Btn=(ToggleButton) findViewById(R.id.IDofButton); Btn.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { // TODO Auto-generated method stub if(isChecked) buttonView.setBackgroundColor(Color.GREEN); else buttonView.setBackgroundColor(Color.RED); } }); 

只需使用setBackgroundColor;)

更新:这也是一个很好的select。 具有不同颜色的标准Androidbutton

ps为什么要downvote求助?