成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Android應用資源之動畫資源(Animation Resources)

移動開發 Android
本文作者集中展現了Android的應用資源---動畫資源(Animation Resources),希望通過此文可以對各位Android開發者的學習有所幫助。

有兩種類型的動畫資源:

屬性動畫

在設定的時間內,通過修改與Animator類相關的對象的屬性值來創建一個動畫。

視圖動畫

有兩種類型的視圖動畫框架

補間動畫(Tween animation):通過執行通過執行一系列的與Animation類相關的單一圖片的轉換來創建動畫。

幀動畫(Frame animation):通過顯示與AnimationDrawable類的順序相關的圖片序列來創建動畫。

屬性動畫

動畫被定義在要修改的目標對象屬性的XML中,如設定時間內的背景色或alpha值。

文件位置(FILE LOCATION):

res/animator/filename.xml,文件名被用作資源ID。

被編譯的資源類型(COMPILED RSOURCE DATATYPE):

資源要指向ValueAnimator、ObjectAnimator或AnimatorSet類型

資源引用(RESOURCE REFERENCE):

在Java代碼中:R.animation.filename

在XML文件中:@[package:]animator/filename

語法(SYNTAX):

  1. <set 
  2.   android:ordering=["together" | "sequentially"]> 
  3.  
  4.     <objectAnimator 
  5.         android:propertyName="string" 
  6.         android:duration="int" 
  7.         android:valueFrom="float | int | color" 
  8.         android:valueTo="float | int | color" 
  9.         android:startOffset="int" 
  10.         android:repeatCount="int" 
  11.         android:repeatMode=["repeat" | "reverse"
  12.         android:valueType=["intType" | "floatType"]/> 
  13.  
  14.     <animator 
  15.         android:duration="int" 
  16.         android:valueFrom="float | int | color" 
  17.         android:valueTo="float | int | color" 
  18.         android:startOffset="int" 
  19.         android:repeatCount="int" 
  20.         android:repeatMode=["repeat" | "reverse"
  21.         android:valueType=["intType" | "floatType"]/> 
  22.  
  23.     <set> 
  24.         ... 
  25.     </set> 
  26. </set> 

這個文件必須有一個單一的跟元素:既可以是<set>、<objectAnimator>也可以是<valueAnimator>。可以把動畫元素一起組織到<set>元素中,包括其他的<set>元素。

元素(ELEMENTS):

<set>

能夠包含其他動畫元素的一個容器(<objectAnimator>、<valueAnimator>、或其他的<set>元素)。代表一個AnimatorSet對象。

可以指定<set>嵌套標簽,把更多的動畫組織到一起。每個<set>能夠定義它自己的順序屬性。

屬性(ATTRIBUTES):

android:ordering

關鍵屬性,它指定該集合中動畫的播放順序。

說明

sequentially

在本組集合中按順序播放動畫。

together(默認)

同一時間播放本組集合中的動畫

<objectAnimator>

在特定的設定時間內一個對象的具體動畫屬性,代表了一個ObjectAnimator對象。

屬性(ATTRIBUTES):

android:propertyName

字符串類型,必須的。通過這個名字來引用動畫的對象屬性。例如,可以給View對象指定“alpha”或“backgroundColor”屬性。ObjectAnimator元素沒有暴露target屬性,因此不能在XML聲明中把對象設置給動畫。必須通過調用loadAnimator()方法和setTarget()方法把動畫XML資源填充到包含這個屬性的目標對象中。

android:valueTo

浮點類型、整型、或顏色值,必須的。它是動畫屬性的結束值。顏色是用六個十六進制數表示(如#333333)。

android:valueFrom

浮點類型、整型、或顏色值,它是動畫屬性的開始值,如果沒有指定,那么動畫會在用屬性的get方法獲取值的時刻開始。顏色是六位十六進制數表示(如#333333)。

android:duration

整數類型。以毫秒為單位,指定動畫時間,默認是300毫秒。

android:startOffset

整數類型。在start()方法被調用之后,動畫延遲的毫秒數。

android:repeatCount

整數類型。指定動畫的重復次數。設置為“-1”,說明要無限次重復,或指定一個正整數。如,設定為1,說明動畫***次運行之后,還要重復一次,因此動畫要播放兩次。默認值是0,意味著不重復。

android:repeatMode

正整數。指定在動畫到達結尾時的行為方式。只有android:repeatCount被設置為正整數或“-1”時,這個屬性才有效果。如果設置為“reverse”,那么每次重復時會逆向播放動畫,如果設置為“repeat”,那么每次重復時,會從動畫的開頭來播放動畫。

android:valueType

關鍵屬性。如果值是顏色值,那么不用指定這個屬性。動畫框架會自動處理顏色值。

說明

intType

指定動畫的值是整數

floatType(默認)

指定動畫的值是浮點數

<animator>

在設定時間內的動畫。代表了一個ValueAnimator對象。

屬性(ATTRIBUTES):

android:valueTo

浮點型、整型或顏色值,必須的。它是動畫結束的的值。顏色值用六位十六進制數來代表(如,#333333)

android:valueFrom

浮點型、整型或顏色值,必須的。它是動畫開始的值。顏色值用六位十六進制數來代表(如,#333333)

android:duration

整數。以毫秒為單位,指定動畫的播放時間。默認是300毫秒。

android:startOffset

整數。指定start()方法被調用后,動畫延遲的毫秒數。

android:repeatCount

整數。指定動畫的重復次數。如果設置為“-1”,則動畫會無限次重復,或者指定一個正整數。例如,設定為“1”,那么動畫在初始運行一次之后,會再重復播放一次,因此動畫總共播放了兩次。它的默認值是0,這意味著動畫重復。

android:repeatMode

整數。它指定動畫到達結尾時重復的行為方式。android:repeatCount必須被設置為正整數或“-1”時,這個屬性才會有效果。如果設置為“reverse”,動畫在每次重播時,會逆向播放;如果設置為“repeat”,那么動畫每次重播時,會重開始的位置播放。

android:valueType

關鍵屬性,如果值是顏色,則不用指定這個屬性。因為動畫框架會自動的處理顏色值

說明

intType

指定動畫的值是整數

floatType(默認)

指定動畫的值是浮點數

例子(EXAMPLE):

這個XML文件被保存在res/animator/property_animator.xml:

  1. <set android:ordering="sequentially"> 
  2.     <set> 
  3.         <objectAnimator 
  4.             android:propertyName="x" 
  5.             android:duration="500" 
  6.             android:valueTo="400" 
  7.             android:valueType="intType"/> 
  8.         <objectAnimator 
  9.             android:propertyName="y" 
  10.             android:duration="500" 
  11.             android:valueTo="300" 
  12.             android:valueType="intType"/> 
  13.     </set> 
  14.     <objectAnimator 
  15.         android:propertyName="alpha" 
  16.         android:duration="500" 
  17.         android:valueTo="1f"/> 
  18. </set> 

要運行這個動畫,就必須在代碼中把這個XML資源填充給一個AnimatorSet對象,然后在啟動這個動畫集之前,把目標對象設置個所有的動畫。調用setTarget方法可以方便的把一個單一對象設置給AnimatorSet對象的所有子對象。代碼如下:

  1. AnimatorSet set = (AnimatorSet) AnimatorInflater.loadAnimator(myContext,    R.anim.property_animator); 
  2.  
  3. set.setTarget(myObject);set.start();
責任編輯:閆佳明 來源: oschina
相關推薦

2013-09-02 16:13:56

API應用資源

2010-01-25 17:43:13

Android資源

2013-09-02 16:08:50

調試Windows

2013-12-27 15:31:26

Android開發Android應用資源Resources

2021-08-10 07:27:41

Kubernetes運維容器

2013-12-04 14:29:18

Android SDK應用程序

2011-07-03 10:05:52

Core Animat

2010-05-28 15:16:40

MySQL 資源

2016-11-08 17:49:03

前端gzipzlib

2020-10-20 09:30:00

HarmonyOS應用開發

2011-06-29 18:36:59

Qt 動畫 狀態機

2013-12-21 19:58:32

SDN應用資源管理平臺SDN

2011-12-30 16:30:39

Java

2020-11-23 08:48:00

Kubernetes容器開發

2013-12-03 18:31:43

SDN應用編排資源管理

2011-07-28 16:06:34

IOS 應用程序 資源

2023-10-04 18:24:54

wpf動態資源

2023-11-28 08:43:48

2014-08-15 14:25:48

Android程序員資源

2014-08-20 10:28:29

Android
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美高清视频在线观看 | 国产视频久久久 | 久久看看| 国产精品一区二区三区久久久 | 亚洲天堂久久 | 日本电影韩国电影免费观看 | 中文字幕91av| 久久久久久久久久久一区二区 | 精品国产一区二区三区久久久蜜月 | 国产精品视频在线播放 | 午夜免费| 国产99视频精品免费视频7 | 久久精品成人 | 鸳鸯谱在线观看高清 | 女人毛片a毛片久久人人 | 欧美一区二区 | 亚洲精品福利在线 | 91资源在线 | 亚洲最新网址 | 国产在线一区二区 | 国产精品久久久久久久久久久久久 | 亚洲欧美国产毛片在线 | 国产一区三区在线 | a在线视频 | 精品久久久久久久久亚洲 | www.国产精品 | 黄色在线免费观看 | 中文字幕一区在线观看视频 | 在线观看免费av网 | 羞羞视频在线观看免费观看 | 欧美理论片在线观看 | 国产精品国产自产拍高清 | 7777奇米影视 | 夜夜骑首页 | 亚洲第一色站 | 欧美精品一区二区在线观看 | 久久成人国产精品 | 夜夜爽99久久国产综合精品女不卡 | 欧美成视频| 韩国主播午夜大尺度福利 | 91福利电影在线观看 |