1. 程式人生 > >ValueAnimator API 介紹

ValueAnimator API 介紹

public class ValueAnimator 
extends Animator 繼承Animator

java.lang.Object
   ↳ android.animation.Animator
     ↳ android.animation.ValueAnimator
Known direct subclasses   直接子類
ObjectAnimatorTimeAnimator

這個類為正在執行的動畫提供了簡單的計時引擎,正在執行的動畫計算動畫的值並且將它設定在目標物件。

所有動畫都使用一個計時脈衝,它執行在自定義的handler去確保屬性的改變放生在UI執行緒。

預設情況下,ValueAnimator 使用非線性時間插入器,通過AccelerateDecelerateInterpolator類,此類加速進入動畫並且減速退出動畫,這個行為通過呼叫

setInterpolator(TimeInterpolator)來改變。


Animators can be created from either code or resource files. Here is an example of a ValueAnimator resource file:

動畫可以通過程式碼或者資原始檔建立。一下是一個ValueAnimator 資原始檔的例子。


 
  
 
 <animator xmlns:android="http://schemas.android.com/apk/res/android" android:duration="1000" android:valueFrom="1" android:valueTo="0" android:valueType="floatType" android:repeatCount="1" android:repeatMode="reverse"/>


從API23開始,同樣可以用PropertyValuesHolder 和Keyframe 資源標籤去建立多步動畫。注意你可以定義明確的小數值(從0到1)為每一個 keyframe 去決定何時動畫應該到達那個值。當然,你可以停止小數而keyframes 會被均勻地分配在整個過程。


<animator xmlns:android="http://schemas.android.com/apk/res/android"
          android:duration="1000"
          android:repeatCount="1"
          android:repeatMode="reverse">
    <propertyValuesHolder>
        <keyframe android:fraction="0" android:value="1"/>
        <keyframe android:fraction=".2" android:value=".4"/>
        <keyframe android:fraction="1" android:value="0"/>
    </propertyValuesHolder>
</animator>


Summary  總結

Nested classes        巢狀的類

interface ValueAnimator.AnimatorUpdateListener

Implementors of this interface can add themselves as update listeners to an ValueAnimatorinstance to receive callbacks on every animation frame, after the current frame's values have been calculated for that ValueAnimator

實現這個介面可以將它們自己新增為對ValueAnimator例項更新監聽,去接收在每一動畫的回撥,這是發生在當前ValueAnimator幀的值被計算之後。

Constants

int INFINITE

This value used used with the setRepeatCount(int) property to repeat the animation indefinitely.

這個值用在setRepeatCount(int) 屬性去無限重複動畫。

int RESTART

When the animation reaches the end and repeatCount is INFINITE or a positive value, the animation restarts from the beginning.

當動畫結束並且repeatCount  是INFINITE   或者一個正值時,動畫重頭開始。

int REVERSE

When the animation reaches the end and repeatCount is INFINITE or a positive value, the animation reverses direction on every iteration.

當動畫結束並且repeatCount  是INFINITE   或者一個正值時,動畫在每個迭代取反方向

Inherited constants  繼承類

From class android.animation.Animator

Public constructors   公共構造器

ValueAnimator()

Creates a new ValueAnimator object.

建立一個新ValueAnimator 物件

Public methods

void addUpdateListener(ValueAnimator.AnimatorUpdateListener listener)

Adds a listener to the set of listeners that are sent update events through the life of an animation.

新增一個監聽器到監聽器的集合,這個集合在整個動畫生命週期被髮送更新時間

static boolean areAnimatorsEnabled()

Returns whether animators are currently enabled, system-wide.

返回是否動畫當前可操作的

void cancel()

Cancels the animation.

取消動畫

ValueAnimator clone()

Creates and returns a copy of this object.

建立並返回這個物件的副本

void end()

Ends the animation.

結束動畫

float getAnimatedFraction()

Returns the current animation fraction, which is the elapsed/interpolated fraction used in the most recent frame update on the animation.

Object getAnimatedValue()

The most recent value calculated by this ValueAnimator when there is just one property being animated.

ValueAnimator 計算的最近值 當只有一個屬性被執行

Object getAnimatedValue(String propertyName)

The most recent value calculated by this ValueAnimator for propertyName.

獲取propertyName 對應的ValueAnimator 計算的最近的值

long getCurrentPlayTime()

Gets the current position of the animation in time, which is equal to the current time minus the time that the animation started.

及時獲取當前動畫的位置,相當於當前時間減去開始時間

long getDuration()

Gets the length of the animation.

獲取動畫的時長

static long getFrameDelay()

The amount of time, in milliseconds, between each frame of the animation.

動畫的幀與幀之間時間的總量,毫秒

TimeInterpolator getInterpolator()

Returns the timing interpolator that this ValueAnimator uses.

返回ValueAnimator使用的時間差之器

int getRepeatCount()

Defines how many times the animation should repeat.

返回動畫應該重複的次數

int getRepeatMode()

Defines what this animation should do when it reaches the end.

返回動畫結束時動畫應該做什麼

long getStartDelay()

The amount of time, in milliseconds, to delay starting the animation after start() is called.

 start()呼叫之後 延時的時間總量

long getTotalDuration()

Gets the total duration of the animation, accounting for animation sequences, start delay, and repeating.

獲取動畫持續的時間總量,包括順序,開始延時和重複

PropertyValuesHolder[] getValues()

Returns the values that this ValueAnimator animates between.

返回ValueAnimator 所執行在值。

boolean isRunning()

Returns whether this Animator is currently running (having been started and gone past any initial startDelay period and not yet ended).

返回動畫是否在執行。

boolean isStarted()

Returns whether this Animator has been started and not yet ended.

返回是否動畫開始並且還沒結束

static ValueAnimator ofArgb(int... values)

Constructs and returns a ValueAnimator that animates between color values.

構造並返回一個執行在顏色之間的ValueAnimator 

static ValueAnimator ofFloat(float... values)

Constructs and returns a ValueAnimator that animates between float values.

構造並返回一個執行在floate值之間的ValueAnimator 

static ValueAnimator ofInt(int... values)

Constructs and returns a ValueAnimator that animates between int values.

構造並返回一個執行在int值之間的ValueAnimator 

static ValueAnimator ofObject(TypeEvaluator evaluator, Object... values)

Constructs and returns a ValueAnimator that animates between Object values.

構造並返回一個執行在Object 值之間的ValueAnimator 

static ValueAnimator ofPropertyValuesHolder(PropertyValuesHolder... values)

Constructs and returns a ValueAnimator that animates between the values specified in the PropertyValuesHolder objects.

構造並返回一個執行在定義在PropertyValuesHolder值之間的ValueAnimator 

void pause()

Pauses a running animation.

暫停動畫

void removeAllUpdateListeners()

Removes all listeners from the set listening to frame updates for this animation.

清除所有更新監聽

void removeUpdateListener(ValueAnimator.AnimatorUpdateListener listener)

Removes a listener from the set listening to frame updates for this animation.

清除集合中的指定監聽

void resume()

Resumes a paused animation, causing the animator to pick up where it left off when it was paused.

使暫停的動畫獲取焦點

void reverse()

Plays the ValueAnimator in reverse.

反向執行動畫

void setCurrentFraction(float fraction)

Sets the position of the animation to the specified fraction.

設定動畫的位置到指定的小數值

void setCurrentPlayTime(long playTime)

Sets the position of the animation to the specified point in time.

設定動畫的位置到指定的時間點

ValueAnimator setDuration(long duration)

Sets the length of the animation.

設定動畫執行的時長

void setEvaluator(

相關推薦

ValueAnimator API 介紹

public class ValueAnimator extends Animator 繼承Animator java.lang.Object    ↳ andr

D3js-API介紹【英】

power rtg fine ict ndb rri zip vertex href Everything in D3 is scoped under the d3 namespace. D3 uses semantic versioning. You can fi

關於RestFul API 介紹與實踐

clas 分享 ice div 之前 api 設計 article alt 之前演示的PPT,直接看圖。。。 ?參考鏈接: ?RESTful API 設計最佳實踐 ?RESTful API 設計指南 ?SOAP webserivce和 RESTfulwebse

D3js-API介紹【中】

模擬 數組的數組 median factor from position 依據 tracking -a JavaScript可視化圖表庫D3.js API中文參考,d3.jsapi D3 庫所提供的全部 API 都在 d3 命名空間下。d3 庫使用語義版本

使用html5中video自定義播放器必備知識點總結以及JS全屏API介紹

標簽 quest htm round internet tel ren per 全屏 一、video的js知識點: controls(控制器)、autoplay(自動播放)、loop(循環)==video默認的; 自定義播放器中一些JS中提供的方法和屬性的記錄: 1、pla

Java NIO2 File API介紹

tor eat ive 復制粘貼 core 替換 缺省 很多 示例代碼 [譯]Java NIO2 File API介紹 1.概覽 在這篇文章中,我們要關註的是使用Java平臺的NIO(譯者註: NIO意即New I/O)的APIs----NIO2----用來對文件做一些基礎

AnyCAD(MFC版)一些API介紹

sets 設置 manager tool 對話框 ted api des 現實 AnyCAD(MFC版)一些API介紹 AuView3dAPI類   該類主要包含對文檔AuView3d(MFC文檔程序視類)以及AuWindow3d(對話框中顯示框)的顯示操作。 m_View

react16.7.0-alpha hooks的api介紹

如果你之前對於Hooks沒有了解,那麼你可能需要看下概述部分。你或許也可以在一些常見的問題中找到有用的資訊。 基本的鉤子 useState useEffect useContext 新增的鉤子 useReducer useCal

Hibernate_day01---Hibernate環境搭建、配置檔案詳解、核心api介紹

JavaEE三層結構對應的框架 1) web層:struts2框架 2) service層:spring框架 3)dao層:hibernate框架 -- 對資料庫進行crud操作 什麼是框架: 可複用的設計構件 作用:可以少寫一部分程式碼。使用框架寫程式,會幫我們實現一部

BasicExcel API介紹

一個用STL C++寫的讀寫Excel檔案的類,是CSpreadSheet作者封裝的,與CSpreadSheet的區別:不依賴ODBC,而CSpreadSheet依賴ODBC,需要MFC庫的支援,不能跨平臺。 BasicExcel的限制: 1)不支援格式化; 2)不支援公式; 3)不

tensorflow中slim模組api介紹

github:https://github.com/tensorflow/tensorflow/tree/master/tensorflow/contrib/slim TensorFlow-Slim TF-Slim is a lightweight library for definin

Animatable API介紹

public interface Animatable  android.graphics.drawable.Animatable Known indire

Android中反射機制解析 API介紹 建立private構造方法類例項 反射內部類 使用demo

反射 前言 相關知識點 編譯型語言和解釋型語言 動態型別語言和靜態型別語言 反射(Reflection) Class Class類API Constructor類 AP

Consul客戶端(orbitz 與ecwid)API介紹

Consul客戶端(orbitz 與ecwid)API介紹 本檔案簡要介紹兩個consul客戶端的使用。近期因為使用consul,學習瞭解consul的客戶端,主要用來註冊服務發現服務: pom檔案加入如下依賴。 注意ecwid是spring-cloud-consul-core的依賴包&n

【翻譯】OpenTSDB 2.3 文件--HTTP API介紹

HTTP API OpenTSDB提供基於HTTP的應用程式程式設計介面,以實現與外部系統的整合。幾乎所有OpenTSDB功能都可通過API訪問,例如查詢時間序列資料,管理元資料和儲存資料點。在研究各資料點資訊之前,請閱讀整個頁面以獲取有關標準API行為的重要資訊。 概覽 HTT

Hadoop YARN中web服務的REST API介紹

本文轉自: 轉載自過往記憶(https://www.iteblog.com/) 歡迎前往原部落格檢視學習,還參考此篇部落格:https://blog.csdn.net/lumingkui1990/article/details/52175263 Hadoop YARN自帶了一系列的web

SAP S4CRM 1811 服務訂單API介紹

-s crm開發 主題 onf 必須 基本數據 tin 基礎 read Jerry在今年2月28日,SAP Customer Management for S/4HANA 1.0正式問世這個具有紀念意義的日子,同時發布了中英文版的博客進行介紹。 英文版發在SAP社區上,至今

Django - - RESTful API介紹

目錄 什麼是RESTful RESTful API設計 基於Django實現RESTful API 基於Django REST Framework框架實現 1, 什麼是RESTful REST與技術無關,代表的是一種軟體架構風格,REST是Representational S

react16.7 hooks api介紹

如果你之前對於Hooks沒有了解,那麼你可能需要看下概述部分。你或許也可以在一些常見的問題中找到有用的資訊。 基本的鉤子 useState useEffect useContext 新增的鉤子

H5獲取使用者位置API + 百度地圖API介紹

一. Geolocaiton API 功能介紹 Geolocation介面是一個用來獲取裝置地理位置的可程式設計的物件,它可以讓Web內容訪問到裝置的地理位置,這將允許Web應用基於使用者的地理位置提供定製的資訊. 出於安全考慮,當一個Web頁嘗試獲取地理位置資