前几天完成了底部菜单栏的设计与功能的实现,其中就包括了其弹出效果的设置,下面就来分析一下:
实现步骤:
1.在res目录下新建anim文件夹用来存放动画相关的xml文件。
2.新建xml文件(push_bottom_in.xml,push_bottom_out.xml),写入实现淡入淡出效果的代码:
<?xml version="1.0" encoding="utf-8"?>
<!-- 淡入 -->
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<alpha
android:duration="200"
android:fromAlpha="0.0"
android:toAlpha="1.0" />
</set>
<?xml version="1.0" encoding="utf-8"?>
<!--淡出 -->
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<alpha
android:duration="200"
android:fromAlpha="1.0"
android:toAlpha="0.0" />
</set>
其中
参数duration用来设置动画完成需要的时间
参数fromAlpha表示动画开始时的透明度
参数toAlpha表示动画结束时的透明度
3.在res->values->styles下编辑淡入淡出效果的style:
<style name="AnimBottom" parent="@android:style/Animation">
<item name="android:windowEnterAnimation">@anim/push_bottom_in</item>
<item name="android:windowExitAnimation">@anim/push_bottom_out</item>
</style>
其中AnimBottom是style的名字,它的父对象是android:Animation,android:windowEnterAnimation是指窗体的进入动画,andoird:windowExitAnimation是指窗体的离开动画
它们所包裹的就是刚刚定义的那两个xml文件。
4.最后在java代码中调用这个style
this.setAnimationStyle(R.style.AnimBottom);
注:以上的过程主要是针对上一篇底部菜单栏的设计而言的,因此可能不具备代表性。不过最近也会对android的动画效果做一定的研究,毕竟用户体验也是很重要的嘛!有兴趣的朋友也可以下载这个demo看一下还是有一定借鉴意义的!
下载地址:http://download.csdn.net/detail/superyu1992/8048515