日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android属性动画 XML

發(fā)布時間:2024/9/30 Android 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android属性动画 XML 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

轉(zhuǎn)載請標明出處:http://blog.csdn.net/zhaoyanjun6/article/details/118913022
本文出自【趙彥軍的博客】

文章目錄

  • 使用XML編寫動畫

使用XML編寫動畫

我們可以使用代碼來編寫所有的動畫功能,這也是最常用的一種做法。不過,過去的補間動畫除了使用代碼編寫之外也是可以使用XML編寫的,因此屬性動畫也提供了這一功能,即通過XML來完成和代碼一樣的屬性動畫功能。

通過XML來編寫動畫可能會比通過代碼來編寫動畫要慢一些,但是在重用方面將會變得非常輕松,比如某個將通用的動畫編寫到XML里面,我們就可以在各個界面當中輕松去重用它。

如果想要使用XML來編寫動畫,首先要在res目錄下面新建一個animator文件夾,所有屬性動畫的XML文件都應該存放在這個文件夾當中。然后在XML文件中我們一共可以使用如下三種標簽:

  • 對應代碼中的ValueAnimator
  • 對應代碼中的ObjectAnimator
  • 對應代碼中的AnimatorSet

那么比如說我們想要實現(xiàn)一個從0到100平滑過渡的動畫,在XML當中就可以這樣寫:

<animator xmlns:android="http://schemas.android.com/apk/res/android"android:valueFrom="0"android:valueTo="100"android:valueType="intType"/>

而如果我們想將一個視圖的alpha屬性從1變成0,就可以這樣寫:

<objectAnimator xmlns:android="http://schemas.android.com/apk/res/android"android:valueFrom="1"android:valueTo="0"android:valueType="floatType"android:propertyName="alpha"/>

其實XML編寫動畫在可讀性方面還是挺高的,上面的內(nèi)容相信不用我做解釋大家也都看得懂吧。

另外,我們也可以使用XML來完成復雜的組合動畫操作,比如將一個視圖先從屏幕外移動進屏幕,然后開始旋轉(zhuǎn)360度,旋轉(zhuǎn)的同時進行淡入淡出操作,就可以這樣寫:

<set xmlns:android="http://schemas.android.com/apk/res/android"android:ordering="sequentially" ><objectAnimatorandroid:duration="2000"android:propertyName="translationX"android:valueFrom="-500"android:valueTo="0"android:valueType="floatType" ></objectAnimator><set android:ordering="together" ><objectAnimatorandroid:duration="3000"android:propertyName="rotation"android:valueFrom="0"android:valueTo="360"android:valueType="floatType" ></objectAnimator><set android:ordering="sequentially" ><objectAnimatorandroid:duration="1500"android:propertyName="alpha"android:valueFrom="1"android:valueTo="0"android:valueType="floatType" ></objectAnimator><objectAnimatorandroid:duration="1500"android:propertyName="alpha"android:valueFrom="0"android:valueTo="1"android:valueType="floatType" ></objectAnimator></set></set></set>

這段XML實現(xiàn)的效果和我們剛才通過代碼來實現(xiàn)的組合動畫的效果是一模一樣的,每個參數(shù)的含義都非常清楚,相信大家都是一看就懂,我就不再一一解釋了。

最后XML文件是編寫好了,那么我們?nèi)绾卧诖a中把文件加載進來并將動畫啟動呢?只需調(diào)用如下代碼即可:

Animator animator = AnimatorInflater.loadAnimator(context, R.animator.anim_file); animator.setTarget(view); animator.start();

調(diào)用AnimatorInflater的loadAnimator來將XML動畫文件加載進來,然后再調(diào)用setTarget()方法將這個動畫設(shè)置到某一個對象上面,最后再調(diào)用start()方法啟動動畫就可以了,就是這么簡單。

總結(jié)

以上是生活随笔為你收集整理的Android属性动画 XML的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。