有没有办法在Android中为按钮设置动画,以便在单击它时将按钮的背景更改为按下的图像?
我只使用背景属性在表单按钮上显示图像。
使用此 XML:将其保存在可绘制文件夹中并设置为背景可绘制对象。
<?xml version="1.0" encoding="utf-8" ?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="false" android:drawable="@drawable/category_listing_bg_img" />
<item android:state_pressed="true" android:drawable="@drawable/category_listing_bg_img_pressed" />
</selector>
在您的 res/drawable 文件夹上添加一个 xml 文件,将其命名为 button_selector.xml 还放置两个可绘制的,一个用于按下状态,另一个用于未按下或正常状态。最后添加这两个你的 xml 文件按钮选择器,一切都应该工作!不要忘记将 @drawable/bytton_selector.xml 设置为 main.xml 文件中按钮的背景。
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/btn_pressed" android:state_pressed="true"/>
<item android:drawable="@drawable/btn_unpressed"/>
</selector>
就在这里。实现 onTouchListener。在 onTouch 方法中使用 MotionEvent 变量(让我们说事件)这样写:
if (event.getAction() == MotionEvent.ACTION_DOWN){
/*Code*/
}
if (event.getAction() == MotionEvent.ACTION_UP){
/*Code*/
}
你应该做的是创建一个selector
(Krishnakant Dalal 所说的)。它处理 UI 元素在每个状态下的外观(按下、禁用、正常等)
有关选择器的更多信息,请阅读此处:http ://android-journey.blogspot.com/2009/12/android-selectors.html