android按钮动画的实现

14 篇文章 0 订阅
12 篇文章 0 订阅

    一款好的应用不仅体现在他性能的良好上,更多的是体现在他给用户的很好的体验度,能够给用户带来很好的操作性和操作反馈。这篇文章就来说一说简单的按钮动画的实现。

    在我们用过的很多应用中都会涉及到按钮动画的效果,他会根据用户不同的操作显示不同的状态。常见的就是一个按钮当被点击时会有动画,或者是颜色上的变化,给用户更好的体验度。当然这样的效果会有很多的实现方式,这里就通过<selector/></selector>来实现背景的切换,进而实现按钮背景色的变化。

    新建一个xml文件,命名为button_bg,源文件如下:

<span style="font-family:KaiTi_GB2312;font-size:18px;"><?xml version="1.0" encoding="utf-8"?>
<selector
  xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true" android:drawable="@drawable/btn_style_alert_dialog_button_pressed" />
    <item android:drawable="@drawable/btn_style_alert_dialog_button_normal" />
</selector></span>
    其中,selector有两种状态state_press,分别对应的是true和false,默认情况下为false。要想实现点击变换背景的话可以在这两种状态下分别设置不同的背景,通过背景的切换实现动画的效果。在这里提供的例子中当state_press为true,也就是控件被按下的时候对应btn_style_alert_dialog_button_pressed这张图片,默认情况下对应btn_style_alert_dialog_button_normal这张图片,当然还可以通过背景色来标记这两种状态。

    接下来只需要在我们的按钮布局中,background属性中加入引用这个xml文件即可实现按钮动态变化的效果。

源文件如下:

<span style="font-family:KaiTi_GB2312;font-size:18px;"><Button
            android:id="@+id/btn_pick_photo"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="20dip"
            android:layout_marginRight="20dip"
            android:layout_marginTop="20dip"
            android:background="@drawable/button_bg"
            android:text="确定"
            android:textStyle="bold" /></span>
    以上便是通过selector实现按钮背景色变化动画的所有实现过程,当然实现页面动画的方法还有很多种,在之后的文章中也会多多分享给大家。希望对大家的入门学习有所帮助!

评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值