当前位置: 代码迷 >> Android >> Android View.startAnimation()卡通片
  详细解决方案

Android View.startAnimation()卡通片

热度:405   发布时间:2016-05-01 20:17:01.0
Android View.startAnimation()动画

1.

    	Animation animation = AnimationUtils.loadAnimation(this, R.anim.location_pop_anim);    	tvIcon.startAnimation(animation);
?

2.从上到下

<set xmlns:android="http://schemas.android.com/apk/res/android">    <translate       android:fromYDelta="-480"       android:toYDelta="0"       android:duration="1000"/></set>

?

从左到右

<set xmlns:android="http://schemas.android.com/apk/res/android">   <translate       android:fromXDelta="0"       android:toXDelta="320"       android:duration="3000"/></set>

?

?

单位为“%”表示相对于自己旋转

没有单位表示相对父类旋转

?

注意:如果一边位移translate,一边旋转rotate

在旋转的时候会按一个圆形不断减小的圆旋转。因为translate的时候,y不断的变化,rotate会根据这个y值不断变化而变化!

?

?

如果希望执行完一个后再执行另外一个效果,假设第一个效果执行时间是

?

android:duration="1000"

?在下一个效果中设置下面的代码,那么这个效果就可以在上一个效果执行完后再执行

?

  android:startOffset="1000"
?

?

希望设置某个效果重复执行的话

	android:repeatMode="restart"	android:repeatCount="10"
?

?

?

注:Delta也可以用%p為單位?

例子:

android:fromXDelta="0"?android:toXDelta="-100%p"?往左邊消失

android:fromXDelta="-100%p"?android:toXDelta="0"?從左邊進

android:fromXDelta="0"?android:toXDelta="100%p"?往右邊消失

android:fromXDelta="100%p"?android:toXDelta="0"?從右邊進

?

?

二、Rotate?定義視圖旋轉角度

視圖的中心位置旋轉360度,時間1秒完成

<set?xmlns:android="http://schemas.android.com/apk/res/android">

<rotate?

????android:fromDegrees="0"

????android:toDegrees="+360"

????android:pivotX="50%"

????android:pivotY="50%"

????android:duration="1000"/>

</set>

三、Scale?定義視圖縮放動畫

<set?xmlns:android="http://schemas.android.com/apk/res/android"??

????????android:interpolator="@android:anim/accelerate_interpolator">??

???<scale?android:fromXScale="0.0"?android:toXScale="1.0"??

?????????android:fromYScale="0.0"?android:toYScale="1.0"??

?????????android:pivotX="50%p"?android:pivotY="50%p"??

?????????android:duration="300"/>??

</set>?
//上面的效果為從中間爆出來的效果,可用于Activity的過度效果

釋:Scale定義如何沿著x軸方向(或y軸方向)改變視圖的大小,視圖大小發生變化時樞軸(pivot)位置是保持不變的?pivotX/pivotY為x/y軸的百分比

四、Alpha?定義視圖的透明痛

<set?xmlns:android="http://schemas.android.com/apk/res/android">

<alpha?

????android:fromAlpha="0.1"

????android:toAlpha="1.0"

????android:duration="3000"/>

</set>

????注:透明度變化范圍從0.0(透明)到1.0(不透明)

?

?

参考:http://blog.csdn.net/wfung_kwok/article/details/7202682

  相关解决方案