Android 動畫之activity動畫

2021-07-24 18:36:28 字數 2331 閱讀 8064

前面和大家簡單分析了android的控制項的動畫效果(補間動畫和屬性動畫)。但是在開發過程中我們發現:控制項的動畫效果做的很好,但是在頁面跳轉的時候很不自然,我們尋求一種讓使用者有一種漸進的效果,我看開始使用頁面之間的動畫效果,也就是activity之間的動畫效果,給使用者一種很自然的感覺。

在android的activity之間的動畫效果的實現方式比較多,在這裡之列舉出部分實現方法。

說道動畫我們首先想到的是控制項的簡單的動畫效果——補間動畫,使用補間動畫我們一般會使用xml檔案定義動畫的過程,屬性分別是:alpha,rotate,scale,translate。同樣的activity之間的簡單動畫效果也可以使用這四個屬性來定義動畫的過程,我定義了兩個動畫效果,分別是活動的進入動畫和活動的退出動畫。

slide_in_right——從右邊進入的動畫效果**如下:

<?

xml version=

"1.0"

encoding=

"utf-8"

?>

xmlns:

android

=""android

:duration=

"300"

>

android

:fromxdelta=

"100%"

android

:toxdelta=

"0.0"

>

slide_out_left——從左邊出去的動畫過程:

<?

xml version=

"1.0"

encoding=

"utf-8"

?>

xmlns:

android

=""android

:duration=

"300"

>

android

:fromxdelta=

"0.0"

android

:toxdelta=

"-100%"

>

好了,關於activity進入和退出的動畫過程已經配置好了,現在我們需要做的就是讓activity如何按照我們配置的動畫過程執行動畫,顯示動畫效果出來。在執行動畫之前我們要了解清楚動畫效果在**產生效果:

在介紹activity的切換動畫之前我們先來說明一下實現切換activity的兩種方式:

當呼叫startactivity方法的時候啟動乙個新的activity,這時候就涉及到了舊的activity的退出動畫和新的activity的顯示動畫; 

當呼叫finish方法的時候,銷毀當前acitivity,就涉及到了當前activity的退出動畫和前乙個activity的顯示動畫;

所以我們的activity跳轉動畫是分為兩個部分的:乙個activity的銷毀動畫與乙個activity的顯示動畫,明白了這一點之後我們開始看一下第一種實現activity跳轉動畫的方式:通過overridependingtransition方法實現activity切換動畫。

一  、overridependingtransition

這種方式很簡單的,它會在startactivity和finish方法後執行

intent.setclass(this,secondactivity.class);

startactivity(intent);

overridependingtransition(r.anim.slide_in_right

,r.anim.slide_out_left

);

二 、使用style方式實現切換動畫

我們通過style定義了windowanimotionstyle的動畫過程,我們再來了解下windowa你motion的四種動畫: 

activityopenenteranimation

// 用於設定開啟新的activity並進入新的activity展示的動畫

activityopenexitanimation

// 用於設定開啟新的activity並銷毀之前的activity展示的動畫

activitycloseenteranimation

// 用於設定關閉當前activity進入上乙個activity展示的動畫

activitycloseexitanimation

// 用於設定關閉當前activity時展示的動畫

最後我們在配置檔案中配置activity的動畫主題

android

:name=

".threeactiviyt"

android

:theme=

"@style/swipe"

>

文章。

Android動畫之屬性動畫

補間動畫,只是乙個動畫效果,元件其實還在原來的位置上,xy沒有改變,屬性動畫則反之 import android.animation.animator import android.animation.animatorinflater import android.animation.animato...

android動畫之補間動畫

補間動畫 移動補間動畫,縮放補間動畫,旋轉補間動畫,透明補間動畫 1.移動補間動畫 translateanimation 指定移動的絕對位置 以自己的左上角為參照點 translateanimation translateanimation new translateanimation 0,0,0,...

Android動畫詳解之Tween動畫

乙個tween動畫將對於view物件的內容進行一系列簡單的轉換,在animation提供了所以關於tween動畫的類,主要有四個常用的類,alphaanimation 透明度漸變 rotateanimation 旋轉動畫 scaleanimation 縮放動畫 translateanimation ...