1,在AndroidManifest.xml中的Activity的声明上加入android:theme="@style/Anim_fade"

  1. <activity android:name=".AppActivity" android:theme="@style/Anim_fade" >
  2. </activity>

2,在values文件夹下的styles.xml中的resources标签内写

<style name="Anim_fade" parent="android:Theme.NoTitleBar">
<item name="android:windowAnimationStyle">@style/fade</item>
</style>

<style name="fade" parent="@android:style/Animation.Activity">
<item name="android:activityOpenEnterAnimation">@anim/alpha_in</item>
<item name="android:activityOpenExitAnimation">@anim/alpha_out</item>
<item name="android:activityCloseEnterAnimation">@anim/alpha_in</item>
<item name="android:activityCloseExitAnimation">@anim/alpha_out</item>
</style>

注意需要继承自 @android:style/Animation.Activity。具体这4个属性什么意思呢?假设我们有 2 个 Activity,分别是 A1 和 A2:

  • 当我们从 A1 启动 A2 时,A1 从屏幕上消失,这个动画叫做 android:activityOpenExitAnimation
  • 当我们从 A1 启动 A2 时,A2 出现在屏幕上,这个动画叫做 android:activityOpenEnterAnimation
  • 当我们从 A2 退出回到 A1 时,A2 从屏幕上消失,这个叫做 android:activityCloseExitAnimation
  • 当我们从 A2 退出回到 A1 时,A1 出现在屏幕上,这个叫做 android:activityCloseEnterAnimation

3,在res文件夹下建立anim文件夹,然后在里面建立fade_in.xml和fade_out.xml两个动画资源

Android动画效果translate、scale、alpha、rotate详解
(
1)alpha xml 淡出效果
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <set xmlns:android="http://schemas.android.com/apk/res/android">
  3. <alpha
  4. android:fromAlpha="1.0"
  5. android:toAlpha="0.0"
  6. android:duration="500" />
  7. </set>
  8. <!--
  9. fromAlpha:开始时透明度
  10. toAlpha: 结束时透明度
  11. duration:动画持续时间 -->

(2)alpha xml 淡入效果

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <set xmlns:android="http://schemas.android.com/apk/res/android">
  3. <alpha
  4. android:fromAlpha="0.0"
  5. android:toAlpha="1.0"
  6. android:duration="500" />
  7. </set>
  8. <!--
  9. fromAlpha:开始时透明度
  10. toAlpha: 结束时透明度
  11. duration:动画持续时间 -->

(3)rotate.xml 旋转效果:

  1. <?xmlversion="1.0"encoding="utf-8"?>
  2. <setxmlns:android="http://schemas.android.com/apk/res/android">
  3. <rotate
  4. android:interpolator="@android:anim/accelerate_decelerate_interpolator"
  5. android:fromDegrees="300"
  6. android:toDegrees="-360"
  7. android:pivotX="10%"
  8. android:pivotY="100%"
  9. android:duration="10000"/>
  10. </set>
  11. <!--
  12. fromDegrees 动画开始时的角度
  13. toDegrees 动画结束时物件的旋转角度,正代表顺时针
  14. pivotX 属性为动画相对于物件的X坐标的开始位置
  15. pivotY 属性为动画相对于物件的Y坐标的开始位置 -->

(4)scale.xml 缩放效果:

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <set xmlns:android="http://schemas.android.com/apk/res/android">
  3. <scale
  4. android:interpolator= "@android:anim/decelerate_interpolator"
  5. android:fromXScale="0.0"
  6. android:toXScale="1.5"
  7. android:fromYScale="0.0"
  8. android:toYScale="1.5"
  9. android:pivotX="50%"
  10. android:pivotY="50%"
  11. android:startOffset="0"
  12. android:duration="10000"
  13. android:repeatCount="1"
  14. android:repeatMode="reverse" />
  15. </set>
  16. <!--
  17. fromXDelta,fromYDelta 起始时X,Y座标,屏幕右下角的座标是X:320,Y:480
  18. toXDelta, toYDelta 动画结束时X,Y的座标 --> <!--
  19. interpolator 指定动画插入器
  20. 常见的有加速减速插入器 accelerate_decelerate_interpolator
  21. 加速插入器 accelerate_interpolator,
  22. 减速插入器 decelerate_interpolator。
  23. fromXScale,fromYScale, 动画开始前X,Y的缩放,0.0为不显示, 1.0为正常大小
  24. toXScale,toYScale, 动画最终缩放的倍数, 1.0为正常大小,大于1.0放大
  25. pivotX, pivotY 动画起始位置,相对于屏幕的百分比,两个都为50%表示动画从屏幕中间开始
  26. startOffset, 动画多次执行的间隔时间,如果只执行一次,执行前会暂停这段时间,
  27. 单位毫秒 duration,一次动画效果消耗的时间,单位毫秒,
  28. 值越小动画速度越快 repeatCount,动画重复的计数,动画将会执行该值+1次
  29. repeatMode,动画重复的模式,reverse为反向,当第偶次执行时,动画方向会相反。
  30. restart为重新执行,方向不变 -->

()translate.xml 移动效果:

  1. <?xmlversion="1.0"encoding="utf-8"?>
  2. <setxmlns:android="http://schemas.android.com/apk/res/android">
  3. <translate
  4. android:fromXDelta="320"
  5. android:toXDelta="0"
  6. android:fromYDelta="480"
  7. android:toYDelta="0"
  8. android:duration="10000"/>
  9. </set>
  10. <!--
  11. fromXDelta,fromYDelta 起始时X,Y座标,屏幕右下角的座标是X:320,Y:480
  12. toXDelta, toYDelta 动画结束时X,Y的座标 -->
 

Activity 切换动画的更多相关文章

  1. Android 编程下设置 Activity 切换动画

    为 Activity 设置切换动画 我们知道,我们可以在 AndroidManifest.xml 文件中,通过 android:theme 属性设置 Activity 的主题.主题中定义了关于 Act ...

  2. Activity切换动画---点击哪里从哪放大

    emmmm,这次来梳理一下 Activity 切换动画的研究.首先,老规矩,看一下效果图: 效果图 这次要实现的动画效果就是类似于上图那样,点击某个 view,就从那个 view 展开下个 Activ ...

  3. Android 动画之View动画效果和Activity切换动画效果

    View动画效果: 1.>>Tween动画通过对View的内容进行一系列的图形变换(平移.缩放.旋转.透明度变换)实现动画效果,补间动画需要使用<set>节点作为根节点,子节点 ...

  4. Activity 切换动画和页面切换动画

    public class MainActivity extends Activity { private ViewFlipper viewFlipper; private float startX; ...

  5. Activity切换动画。从右边滑入,关闭时从左边滑入

    直接贴代码吧   1. 动画文件(两个动画文件配置到res/anim目录下) activity_anim_in_right.xml <?xml version="1.0" e ...

  6. Android Activity 切换动画(非原创)

    在Android开发过程中,经常会碰到Activity之间的切换效果的问题,下面介绍一下如何实现左右滑动的切换效果,首先了解一下Activity切换的实现,从Android2.0开始在Activity ...

  7. Android开发中activity切换动画的实现

    (1)我们在MainAcitvity中定义两个textview,用于点击触发切换Activity事件,下面是布局文件代码. <LinearLayout android:layout_width= ...

  8. Android的Activity切换动画特效库SwitchLayout,视图切换动画库,媲美IOS

    由于看了IOS上面很多开发者开发的APP的视图界面切换动画体验非常好,这些都是IOS自带的,但是Android的Activity等视图切换动画并没有提供原生的,所以特此写了一个可以媲美IOS视图切换动 ...

  9. Activity 切换 动画

    overridePendingTransition的简介   1 Activity的切换动画指的是从一个activity跳转到另外一个activity时的动画. 它包括两个部分:一部分是第一个acti ...

  10. Activity切换动画(overridePendingTransition)-翻页效果

    Activity的切换动画指的是从一个activity跳转到另外一个activity时的动画.{它包括两个部分:一部分是第一个activity退出时的动画:另外一部分时第二个activity进入时的动 ...

随机推荐

  1. HTML之网页的基本介绍

    一.web的基本介绍 web就是world wide web的缩写,称之为全球广域网,俗称WWW 可以将web理解成一种当前的互联网,对于我们来说更多的就是网站服务 网站我们可以理解成是由很多网页组合 ...

  2. 92.背包问题(lintcode)

    注意j-A[i-1]必须大于等于0,只大于0会报错 class Solution { public: /** * @param m: An integer m denotes the size of ...

  3. rf统计条数

    js模式 直接引用关键字模式

  4. WINDOWS-API:取得系统语言种类-GetOEMCP

    GetOEMCP VB声明 Declare Function GetOEMCP Lib "kernel32" Alias "GetOEMCP" () As Lo ...

  5. msys2 使用指定boost

    pacman -S mingw-w64-x86_64-toolchain make mingw-w64-x86_64-cmake mingw-w64-x86_64-openssl mingw-w64- ...

  6. 第六次作业 :使用Excel制作成绩单

  7. angular-file-upload 在IE下使用的坑

    如果在控件配置里面设置了queueLimit属性为1,就是队列文件个数为1,并且在<input>标签设置里multiple属性. 在IE浏览器上传附件的时候,浏览器会报错“SCRIPT50 ...

  8. Taro:使用taro完成小程序开发

    前言:taro是一个可以很好实现一次开发,多端统一的框架,本文只介绍它小程序端开发的一些内容.小程序项目搭建gitup已经有很清楚的说明:https://github.com/NervJS/taro ...

  9. Python9-模块2-包的进阶-day21

    包是一种通过使用‘.模块名’来组织python模块名称空间的方式. 1. 无论是import形式还是from...import形式,凡是在导入语句中(而不是在使用时)遇到带点的,都要第一时间提高警觉: ...

  10. 创建安卓模拟器的两种方式及常用Android命令介绍

    创建安卓模拟器有以下两种方式: 1>通过图形界面创建,在Eclipse中单击Windows->Android Virtual Device Manager启动图形界面窗口 2>如果用 ...