Animation 动画
AlphaAnimation 渐变透明度
RotateAnimation 画面旋转
ScaleAnimation 渐变尺寸缩放
TranslateAnimation 位置移动
AnimationSet 动画集
今天主要讲讲TranslateAnimation,
基本的属性有
float fromXDelta:这个參数表示动画開始的点离当前View X坐标上的差值;
float toXDelta, 这个參数表示动画结束的点离当前View X坐标上的差值;
float fromYDelta, 这个參数表示动画開始的点离当前View Y坐标上的差值。
float toYDelta)这个參数表示动画開始的点离当前View Y坐标上的差值。
这些大家都知道。可是你们真的了解了TranslateAnimation的x,y为0时刻,表示的位置了吗??
在TranslateAnimation中。对位置的理解,假设你没弄清楚。经常常使用到相反的效果,自己还振振有词的说
是不是书本有错误了,和你的实践对不上。
事实上理解起来也不难。一张图搞定
从图上看出来,x,y为0的状态就是动画对象全然显示在屏幕中的状态(不一定是屏幕中央,取决于你动画对象实际宽高)
Y的100%状态是往屏幕下方移动整个动画效果,Y的-100%是屏幕上方移动整个动画高度,x方向上类似。右側表示
100%,左側表示-100%;
接下来,同个一个实例解说:对一个Popupwindow弹出做弹出动画效果。点击屏幕中button,popupwindow从下往上显示,
然后点击popupwindow中的button,popupwindow从上往下收起。
分为进入动画fadein.xml 从下往上
<?退出动画fadeout.xml 从上往下xml version="1.0"encoding="utf-8"?> <setxmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false"> <translate android:fromYDelta="100%" android:toYDelta="0" android:duration="500"/> </set>
<?xml version="1.0"encoding="utf-8"?> <setxmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false"> <translate android:fromYDelta="0" android:toYDelta="100%" android:duration="500"/> </set>
/PopupWindow/res/values/styles.xml <?xml version="1.0" encoding="utf-8"?> <resources> <style name="animation"> <itemname="android:windowEnterAnimation">@anim/fadein</item> <itemname="android:windowExitAnimation">@anim/fadeout</item> </style> </resources>
这样就实现了popupwindow从底部到全然显示。再从显示究竟部消失的动画过程 。其它效果自己去实践
注:在简单的东西。都是靠自己实践才明确。也不要说这个,那个太简单,看了就懂了,非常多东西看过了懂了
过段时间你就不懂了,这就是你学什么都没学精的缘由吧