效果图
res----drawable----selector_color_bg.xml
http://download.csdn.net/detail/zhaihaohao1/9552465
未选择
选中
核心代码:
MainActivity布局文件activity_main.xml
<span style="font-size:18px;"><?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<Button
android:id="@+id/btn_test_color"
android:layout_width="300dp"
android:layout_height="100dp"
android:layout_marginTop="100dp"
android:layout_gravity="center"
android:gravity="center"
android:text="测试背景的变化"
android:background="@drawable/selector_color_bg"
/>
</LinearLayout></span>
背景选择器res----drawable----selector_color_bg.xml
<span style="font-size:18px;"><?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 选中 -->
<item android:state_selected="true">
<color android:color="#6699FF" />
</item>
<!-- 触摸按下时 -->
<item android:state_pressed="true">
<color android:color="#45646a" />
</item>
<!-- 正常默认状态时 -->
<item>
<color android:color="#FF4081" />
</item>
</selector></span>
MainActivity
<span style="font-size:18px;">public class MainActivity extends Activity {
private boolean mBtnSelected;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mBtnSelected = false;
findViewById(R.id.btn_test_color).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mBtnSelected = !mBtnSelected;
v.setSelected(mBtnSelected);
}
});
}
}</span>
源码下载:http://download.csdn.net/detail/zhaihaohao1/9552465