android动画效果 --- 设置activity 跳转动画
转载:http://ming-fanglin.iteye.com/blog/1396473
原来使用Activity.overridePendingTransition来自定义Activity的进入动画,却发现没法定义退出的动画。结果就发现了强大的Theme和Style,之后还需要好好研究一下。
具体是这样子的:
在AndroidManifest里面,对于application和activity标签可以定义theme属性。如果对Application定义了某一个属性,那么会对所有的activity产生影响,当然你可以在activity中覆盖它。
<application android:theme="@style/ThemeActivity">
然后在values/themes.xml中
- <style name="ThemeActivity" mce_bogus="1">
- <item name="android:windowAnimationStyle">@style/AnimationActivity</item>
- <item name="android:windowNoTitle">true</item>
- </style>
<style name="ThemeActivity" mce_bogus="1"> <item name="android:windowAnimationStyle">@style/AnimationActivity</item> <item name="android:windowNoTitle">true</item> </style>
在values/styles.xml中
- <style name="AnimationActivity" parent="@android:style/Animation.Activity" mce_bogus="1">
- <item name="android:activityOpenEnterAnimation">@anim/push_left_in</item>
- <item name="android:activityOpenExitAnimation">@anim/push_left_out</item>
- <item name="android:activityCloseEnterAnimation">@anim/push_right_in</item>
- <item name="android:activityCloseExitAnimation">@anim/push_right_out</item>
- </style>
<style name="AnimationActivity" parent="@android:style/Animation.Activity" mce_bogus="1"> <item name="android:activityOpenEnterAnimation">@anim/push_left_in</item> <item name="android:activityOpenExitAnimation">@anim/push_left_out</item> <item name="android:activityCloseEnterAnimation">@anim/push_right_in</item> <item name="android:activityCloseExitAnimation">@anim/push_right_out</item> </style>
这样就可以了,至于anim中的动画,就自己定义啦,这个和普通的animation是一样的,如果不知道的话,请参见
http://developer.android.com/guide/topics/graphics/view-animation.html。
这种方式除了可以定义activity的animation之外,还有task,window出现和结束时候的动画,具体请参见
http://developer.android.com/reference/android/R.styleable.html#WindowAnimation
本人不明白的 mce_bogus="1" 是什么意思,去掉了也没有影响
附普通切换效果动画:
Activity的切换动画指的是从一个activity跳转到另外一个activity时的动画。
它包括两个部分:
一部分是第一个activity退出时的动画;
另外一部分时第二个activity进入时的动画;
在Android的2.0版本之后,有了一个函数来帮我们实现这个动画。这个函数就是
overridePendingTransition
这个函数有两个参数,第一个参数是第二个activity进入时的动画,第二个参数是第一个activity退出时的动画。
这里需要特别说明的是,关于overridePendingTransition这个函数,有两点需要主意:
1.它必需紧挨着startActivity()或者finish()函数之后调用
2.它只在android2.0以及以上版本上适用
下面举个例子
overridePendingTransition(R.anim.push_left_in,R.anim.push_left_out);
R.anim.push_left_in,第二一个activity进入时动画
push_left_in这个xml文件,放在res/anim目录下
代码如下:
- <?xml version="1.0" encoding="utf-8"?>
- <set xmlns:android="http://schemas.android.com/apk/res/android">
- <translate android:fromXDelta="100%p" android:toXDelta="0" android:duration="300"/>
- <alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="300" />
- </set>
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"><translate android:fromXDelta="100%p" android:toXDelta="0" android:duration="300"/><alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="300" />
</set>
R.anim.push_left_out,第一个activity出去时动画
代码如下:
- <set xmlns:android="http://schemas.android.com/apk/res/android">
- <translate android:fromXDelta="0" android:toXDelta="-100%p" android:duration="300"/>
- <alpha android:fromAlpha="1.0" android:toAlpha="0.0" android:duration="300" />
- </set>
<set xmlns:android="http://schemas.android.com/apk/res/android"><translate android:fromXDelta="0" android:toXDelta="-100%p" android:duration="300"/><alpha android:fromAlpha="1.0" android:toAlpha="0.0" android:duration="300" />
</set>
转载于:https://www.cnblogs.com/shuzui1985/archive/2013/03/31/3020896.html
android动画效果 --- 设置activity 跳转动画相关推荐
- Android 9.0去除Activity跳转动画
有客户要求界面跳转风格要统一,第三方的APP无法控制,所以需要从系统层把Activity跳转动画禁用 frameworks/base/services/core/java/com/android/se ...
- android 5.0跳转动画,android Lollipop(5.0)--activity跳转动画
android Lollipop(5.0)对app中有共享view的activity直接的跳转提供了更好的动画交互. 实现步骤: 1,编写需要的transform. 2,给activity设置样式st ...
- android跳转界面动画,Android Activity跳转动画效果
Activity的跳转动画在5.0的时候做了一个重大的突破,下面来看一下吧 1.5.0之前的overridePendingTransition 相信大家对OverridePendingTransiti ...
- Android Activity跳转动画 - overridePendingTransition用法及原理分析
overridePendingTransition()是在Activity类中实现的一个用来实现跳转动画的方式,也是最常使用的方法. overridePendingTransition() 先看这个名 ...
- Android -- 基础篇 -- Activity跳转动画的五种方式(下)
上一篇文章中我们讲解了在Activity启动过程中获取组件宽高的五种方式.在Activity的启动过程中如果我们直接在生命周期方法中通过view.getWidth()或者是view.getHeight ...
- android activity的跳转动画,实现activity跳转动画的若干种方式
第一种: (使用overridePendingTransition方法实现Activity跳转动画) 在Activity中代码如下 /** * 点击按钮实现跳转逻辑 */ button1.setOnC ...
- Android Material Design 之 Activity 跳转水波纹扩散动画
博主声明: 转载请在开头附加本文链接及作者信息,并标记为转载.本文由博主 威威喵 原创,请多支持与指教. 本文首发于此 博主:威威喵 | 博客主页:https://blog.csdn.net/ ...
- Android 动画之View动画效果和Activity切换动画效果
View动画效果: 1.>>Tween动画 通过对View的内容进行一系列的图形变换(平移.缩放.旋转.透明度变换)实现动画效果,补间动画需要使用<set>节点作为根节点,子节 ...
- Android Activity跳转动画,让你的APP瞬间绚丽起来
我们都知道绚丽的APP总会给用户耳目一新的感觉,为了抓住用户更大网络公司使出浑身解数让自己的产品更绚丽,而绚丽最简单的效果就是Activity跳转效果,不仅可以让用户看起来舒服,而且实现起来也特别简单 ...
最新文章
- 朴素、Select、Poll和Epoll网络编程模型实现和分析——朴素模型
- GAN还有这种操作!谷歌大脑和X实验室利用模拟条件和域适应提高机器抓取效率(附论文)
- 支撑计算机高速化的半导体技术
- Unity中Oculus分屏相机和普通相机一键切换
- RHCE-samba服务
- JQuery中button提交表单报TypeError: elem[type] is not a function jquery
- 03. Java NIO Channel 通道
- 1759: 多少个元素比它大 二分
- Web浏览器已经限制此文件显示
- 心电信号的特征提取、分析与处理
- 计算机编码--3.GB2312与GBK
- win10远程连接Ubuntu
- 2020美化一款PHP版三合一收款码_附50多款模板源码
- 服务器2008修改虚拟内存,Windows 2008 关闭系统虚拟内存功能 如何删除pagefile.sys
- Visual Paradigm 里什么是复合结构图?
- 补充记录vue3中rrweb-player组件实现网页录屏的一个BUG解决
- Linux下服务器开发的必要准备
- vue base64导出(pdfexcel ) 打印(pdf)
- 批处理命令之Start的详细用法-P处理打开IE窗口最大化
- python 如何提取 word 内的图片
热门文章
- python实现pdf解密和pdf转图片
- leetcode - 39. 组合总和
- 鱼眼图像畸变校正--透视变换
- 《汇编语言》王爽—第五章实验三详解
- 百练 06 股票买卖
- php rijndael,将PHP Rijndael算法重写为Java(Android)
- linux 服务器鼠标右键失灵_【华鹏客服维修部】系统重置后,键盘失灵怎么办?...
- mysql数据库空密码修改_修改mysql 数据库密码
- 易买网HTML静态页面,易买网(前台+后台的静态页面)
- excel删除无尽空白行_【辅导员说】学好办公软件word、excel、ppt的意义