按钮单击视觉状态更改

时间:2012-05-03 05:44:22

标签: android forms animation button

有没有办法在Android中设置按钮动画,以便在您点击它时将按钮的背景更改为按下的图像?

我只使用background属性在表单按钮上显示图像。

4 个答案:

答案 0 :(得分:20)

使用此XML:将其保存在drawable文件夹中并设置为可绘制的背景。

<?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>

答案 1 :(得分:5)

在你的res / drawable文件夹名称上添加一个xml文件,它按钮_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>

答案 2 :(得分:1)

是的。实现onTouchListener。在onTouch方法中使用MotionEvent变量(比如说事件)写下这个:

if (event.getAction() == MotionEvent.ACTION_DOWN){
    /*Code*/
}
if (event.getAction() == MotionEvent.ACTION_UP){
    /*Code*/
}

答案 3 :(得分:1)

你应该做的是创建一个selector(Krishnakant Dalal所说的)。 它描述了UI元素在每个状态下的表现(按下,禁用,正常等)。

有关选择器的更多信息,请阅读此处:http://android-journey.blogspot.com/2009/12/android-selectors.html