android 中 ImageButton 的效果
Effect for ImageButton in android
我想为 ImageButton 创建效果。例如,它会在单击时改变颜色...我该怎么做?我想在 .xml 文件中执行此操作。你能帮助我吗!谢谢!
我尝试创建 state.xml 文件如下:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_pressed="true"
android:state_enabled="true"
android:drawable="@drawable/btn_0" />
<item
android:state_focused="true"
android:state_enabled="true"
android:drawable="@drawable/btn_ac" />
</selector>
但是,我无法为 ImageButton 设置背景。错误是这样的:
您只需将 "android:background" 属性添加到 ImageButton 并设置可绘制对象即可。
Your layout
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/my_btn"
android:background="@drawable/btn_drawable"/>
btn_drawable.xml
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:drawable="@drawable/blue"
/>
<item android:state_focused="true"
android:drawable="@drawable/white"
/>
<item android:drawable="@drawable/green" />
</selector>
在上面的代码中,当您的 ImageButton 被按下(state_pressed)、聚焦(state_focus)或正常(未按下且未聚焦)时,您设置了不同的可绘制对象。
Here你可以找到更详细的。
像下面这样创建一个可绘制对象并将其命名为btn_drawable
。
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_enabled="false"
android:drawable="@drawable/btn_disable" />
<item
android:state_pressed="true"
android:state_enabled="true"
android:drawable="@drawable/btn_click" />
</selector>
这是一个例子,这样你可以根据自己的需要和图片按钮的状态添加<item/>
。
然后将可绘制对象设置为图像按钮背景。
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/btn_drawable"/>
我想为 ImageButton 创建效果。例如,它会在单击时改变颜色...我该怎么做?我想在 .xml 文件中执行此操作。你能帮助我吗!谢谢! 我尝试创建 state.xml 文件如下:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_pressed="true"
android:state_enabled="true"
android:drawable="@drawable/btn_0" />
<item
android:state_focused="true"
android:state_enabled="true"
android:drawable="@drawable/btn_ac" />
</selector>
但是,我无法为 ImageButton 设置背景。错误是这样的:
您只需将 "android:background" 属性添加到 ImageButton 并设置可绘制对象即可。
Your layout
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/my_btn"
android:background="@drawable/btn_drawable"/>
btn_drawable.xml
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:drawable="@drawable/blue"
/>
<item android:state_focused="true"
android:drawable="@drawable/white"
/>
<item android:drawable="@drawable/green" />
</selector>
在上面的代码中,当您的 ImageButton 被按下(state_pressed)、聚焦(state_focus)或正常(未按下且未聚焦)时,您设置了不同的可绘制对象。
Here你可以找到更详细的。
像下面这样创建一个可绘制对象并将其命名为btn_drawable
。
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_enabled="false"
android:drawable="@drawable/btn_disable" />
<item
android:state_pressed="true"
android:state_enabled="true"
android:drawable="@drawable/btn_click" />
</selector>
这是一个例子,这样你可以根据自己的需要和图片按钮的状态添加<item/>
。
然后将可绘制对象设置为图像按钮背景。
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/btn_drawable"/>