最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android Activity進(jìn)出動(dòng)畫三種方法

 更新時(shí)間:2017年05月02日 10:59:03   投稿:lqh  
這篇文章主要介紹了Android Activity進(jìn)出動(dòng)畫三種方法的相關(guān)資料,需要的朋友可以參考下

 Android Activity進(jìn)出動(dòng)畫三種方法

 實(shí)現(xiàn)activity的進(jìn)出場(chǎng)動(dòng)畫總共有3種方式,下面會(huì)一一列出,首先給出示例的動(dòng)畫xml文件。

動(dòng)畫的xml文件

<?xml version="1.0" encoding="utf-8"?> 
<translate xmlns:android="http://schemas.android.com/apk/res/android" 
  android:fromYDelta="100%" 
  android:toYDelta="0" 
  android:duration="1000" 
  /> 

這是R.anim.in

<?xml version="1.0" encoding="utf-8"?> 
<translate xmlns:android="http://schemas.android.com/apk/res/android" 
  android:fromYDelta="0" 
  android:toYDelta="100%" 
  android:duration="1000" 
  /> 

這是R.anim.out

實(shí)現(xiàn)activity進(jìn)出場(chǎng)動(dòng)畫的第1種方式:overridePendingTransition

用法:

toNext(AnimationDrawableActivity.class); 
overridePendingTransition(R.anim.in, R.anim.out); 

PS:toNext是一個(gè)封裝的方法,跳轉(zhuǎn)到指定的activity。

如果要finish掉當(dāng)前activity,把它放在overridePendingTransition()方法前后似乎并無(wú)差別,不過(guò)有人建議finish()放在overridePendingTransition()之前,不知出處。

實(shí)現(xiàn)activity進(jìn)出場(chǎng)動(dòng)畫的第2種方式:在清單文件中為activity設(shè)置theme

在styles.xml文件中寫一個(gè)style,如下:

<style name="animationofactivity" parent="AppBaseTheme"> 
    <item name="android:windowAnimationStyle">@style/enterandentrance</item> 
</style> 

其中,主要是為android:windowAnimationStyle設(shè)置值,enterandentrance也是一個(gè)style,如下:

<style name="enterandentrance"> 
    <item name="android:activityOpenEnterAnimation">@anim/in</item> 
    <item name="android:activityOpenExitAnimation">@anim/out</item> 
    <item name="android:activityCloseEnterAnimation">@anim/in</item> 
    <item name="android:activityCloseExitAnimation">@anim/out</item> 
</style> 

從名為A的activity跳轉(zhuǎn)到B,B也可以跳轉(zhuǎn)到C,其中轉(zhuǎn)場(chǎng)動(dòng)畫設(shè)置在B上。

android:activityOpenEnterAnimation:指的是,進(jìn)入B時(shí)的動(dòng)畫。
android:activityOpenExitAnimation:指的是進(jìn)入B時(shí),A的動(dòng)畫,與B的動(dòng)畫是一起顯示的。
android:activityCloseEnterAnimation:通過(guò)B跳轉(zhuǎn)到C后,后退到B時(shí),B的進(jìn)入動(dòng)畫
android:activityCloseExitAnimation:通過(guò)B跳轉(zhuǎn)到C后,后退到B時(shí),C的退出動(dòng)畫

最終,為activity設(shè)置一個(gè)theme,如下:

<activity android:name="com.example.androidresources.AnimationDrawableActivity"  
     android:theme="@style/animationofactivity"/> 

實(shí)現(xiàn)activity進(jìn)出場(chǎng)動(dòng)畫的第3種方式:在activity中用代碼設(shè)置

在所要設(shè)置動(dòng)畫的activity的onCreate方法中,設(shè)置了setContentView()之后,寫如下代碼:

這種方法除了用在activity的轉(zhuǎn)場(chǎng)動(dòng)畫之外,還能用在dialog中。

LayoutParams params = getWindow().getAttributes(); 
params.windowAnimations = R.style.enterandentrance; 
getWindow().setAttributes(params); 

一些動(dòng)畫小常識(shí):

1、調(diào)用overridePendingTransition(enterAnim, exitAnim)時(shí),enterAnim和exitAnim如果有為0的值,指的是不設(shè)置該動(dòng)畫。

2、如果進(jìn)入一個(gè)activity時(shí),想讓前一個(gè)activity靜止不動(dòng),那么需要專門寫一個(gè)動(dòng)畫,如下:

<?xml version="1.0" encoding="utf-8"?> 
<translate xmlns:android="http://schemas.android.com/apk/res/android" 
  android:fromYDelta="0" 
  android:toXDelta="0" 
  android:duration="1000"/> 

 感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

最新評(píng)論

南昌市| 伊通| 兰坪| 鄂托克前旗| 襄垣县| 潍坊市| 海盐县| 莫力| 共和县| 通城县| 普兰店市| 绥芬河市| 仙桃市| 麟游县| 新兴县| 包头市| 册亨县| 乌苏市| 北流市| 舒兰市| 怀安县| 临海市| 滨州市| 温州市| 莒南县| 澄江县| 富平县| 乌兰察布市| 吉安市| 易门县| 遵义市| 永平县| 灵山县| 宝坻区| 永靖县| 叶城县| 镇原县| 文登市| 康平县| 水城县| 永平县|