Android 使用XML实现按钮改变焦点设置背景图

来源:互联网 发布:矩阵相似一定合同吗 编辑:程序博客网 时间:2024/05/02 22:11

具体实现:

① 新建工程
② 准备png 背景图片defaultimage.png 、onfocusimage.png、clickimage.png

                                                                                            

defaultimage.png      onfocusimage.png               clickimage.png

 

③ 在main.xml 布局中添加一个ImageButton 和一个Button(作对比)

main.xml

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical"android:layout_width="fill_parent"android:layout_height="fill_parent" android:background="#FF25CCDD"><ImageButtonandroid:id="@+id/image_Button"android:layout_width="wrap_content"android:layout_height="wrap_content"<Buttonandroid:text="Button01"android:id="@+id/Button01"android:layout_width="wrap_content"android:layout_height="wrap_content"></Button></LinearLayout>


④ 在drawable 文件夹中添加一个advancedbutton.xml 设置<selector>和<item>标签

advancedbutton.xml

<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android" ><itemandroid:state_focused="true"android:state_pressed="false"android:drawable="@drawable/onfocusimage"/><itemandroid:state_focused="true"android:state_pressed="true"android:drawable="@drawable/clickimage"/><itemandroid:state_focused="false"android:state_pressed="true"android:drawable="@drawable/clickimage"/><item android:drawable="@drawable/defaultimage"/></selector>


⑤ 设置ImageButton 的android:background 属性值

<ImageButtonandroid:id="@+id/image_Button"android:layout_width="wrap_content"android:layout_height="wrap_content"android:background="@drawable/advancedbutton"/>


⑥ 结果

原创粉丝点击