theme-windowAnimationStyle 动画四个方法的意义
首先看代码
<style name="Animation.Activity">
<!--A打开B,B的出现动画-->
<item name="activityOpenEnterAnimation">@anim/activity_open_enter</item> <!--A打开B,A的消失动画-->
<item name="activityOpenExitAnimation">@anim/activity_open_exit</item>
<!--A关闭B,B的出现动画-->
<item name="activityCloseEnterAnimation">@anim/activity_close_enter</item> <!--A关闭B,A的消失动画--> <item name="activityCloseExitAnimation">@anim/activity_close_exit</item>
</style>
现在我们有两个activity:
VzGalleryActivity(启动者)
AlbumActivity(被启动者)
他们的style分别如下
<style name="PhotoGridLayout">
<item name="android:drawSelectorOnTop">true</item>
<item name="android:listSelector">@drawable/photogrid_list_selector</item>
</style>
<!-- Vanzo:zhangshuli on: Fri, 27 Mar 2015 16:34:18 +0000
-->
<style name="AppTheme.Album" parent="@style/AppTheme">
<item name="android:windowAnimationStyle">@style/AnimBottom.Album</item>
</style> <style name="AppTheme.VzGallery" parent="@style/AppTheme.Main">
<item name="android:windowAnimationStyle">@style/AnimBottom.VzGallery</item>
</style> <style name="AnimBottom.VzGallery" parent="@android:style/Animation.Activity">
<item name="android:activityOpenEnterAnimation">@anim/push_bottom_out</item>
<item name="android:activityOpenExitAnimation">@anim/push_bottom_out</item>
<item name="android:activityCloseExitAnimation">@anim/push_bottom_out</item>
<item name="android:activityCloseEnterAnimation">@anim/push_bottom_out</item>
</style>
<style name="AnimBottom.Album" parent="@android:style/Animation.Activity">
<item name="android:activityOpenEnterAnimation">@anim/push_bottom_enter</item>
<item name="android:activityOpenExitAnimation">@anim/push_bottom_out</item>
<item name="android:activityCloseExitAnimation">@anim/push_bottom_enter</item>
<item name="android:activityCloseEnterAnimation">@anim/push_bottom_out</item>
</style>
两个启动动画分别为
out.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" > <translate
android:duration="1000"
android:fromYDelta="0"
android:toYDelta="100%p"
/>
<alpha
android:duration="1000"
android:fromAlpha="1.0"
android:toAlpha="0.0" />
</set>
enter.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" > <translate
android:duration="1000"
android:fromYDelta="100%p"
android:toYDelta="0"
/>
<alpha
android:duration="1000"
android:fromAlpha="0"
android:toAlpha="1.0" />
</set>
1)我们更改动画如下
<style name="PhotoGridLayout">
<item name="android:drawSelectorOnTop">true</item>
<item name="android:listSelector">@drawable/photogrid_list_selector</item>
</style>
<!-- Vanzo:zhangshuli on: Fri, 27 Mar 2015 16:34:18 +0000
-->
<style name="AppTheme.Album" parent="@style/AppTheme">
<item name="android:windowAnimationStyle">@style/AnimBottom.Album</item>
</style> <style name="AppTheme.VzGallery" parent="@style/AppTheme.Main">
<item name="android:windowAnimationStyle">@style/AnimBottom.VzGallery</item>
</style> <style name="AnimBottom.VzGallery" parent="@android:style/Animation.Activity"> </style>
<style name="AnimBottom.Album" parent="@android:style/Animation.Activity">
<item name="android:activityOpenEnterAnimation">@anim/push_bottom_enter</item> </style>
当,vz启动al的时候,al 有动画效果,
其他情况下,vz,al均没有效果
2)更改如下
<style name="AppTheme.Album" parent="@style/AppTheme">
<item name="android:windowAnimationStyle">@style/AnimBottom.Album</item>
</style> <style name="AppTheme.VzGallery" parent="@style/AppTheme.Main">
</style> <style name="AnimBottom.VzGallery" parent="@android:style/Animation.Activity">
<item name="android:activityOpenEnterAnimation">@anim/push_bottom_out</item>
<item name="android:activityOpenExitAnimation">@anim/push_bottom_out</item>
<item name="android:activityCloseExitAnimation">@anim/push_bottom_out</item>
<item name="android:activityCloseEnterAnimation">@anim/push_bottom_out</item>
</style>
<style name="AnimBottom.Album" parent="@android:style/Animation.Activity">
<item name="android:activityOpenEnterAnimation">@anim/push_bottom_enter</item>
<item name="android:activityOpenExitAnimation">@anim/push_bottom_out</item>
</style>
vz启动al时候,al跟vz都有动画效果,vz消失动画效果,al出现动画效果
其他情况下没有动画效果(包括al启动其他activity)
3)更改如下
<style name="AppTheme.Album" parent="@style/AppTheme">
<item name="android:windowAnimationStyle">@style/AnimBottom.Album</item>
</style> <style name="AppTheme.VzGallery" parent="@style/AppTheme.Main">
</style> <style name="AnimBottom.VzGallery" parent="@android:style/Animation.Activity">
<item name="android:activityOpenEnterAnimation">@anim/push_bottom_out</item>
<item name="android:activityOpenExitAnimation">@anim/push_bottom_out</item>
<item name="android:activityCloseExitAnimation">@anim/push_bottom_out</item>
<item name="android:activityCloseEnterAnimation">@anim/push_bottom_out</item>
</style>
<style name="AnimBottom.Album" parent="@android:style/Animation.Activity">
<item name="android:activityOpenEnterAnimation">@anim/push_bottom_enter</item>
<item name="android:activityOpenExitAnimation">@anim/push_bottom_out</item>
<item name="android:activityCloseEnterAnimation">@anim/push_bottom_out</item>
</style>
当打开al的时候,al,vz都有动画
但是,关闭al的时候,他们都没有动画
接着,我们通过al,打开另一个activity,al,跟另一个activity没有动画,
最后,我们关闭al打开的activity的时候,al有动画,其他相关activity没有动画
4)更改如下
<style name="AppTheme.Album" parent="@style/AppTheme">
<item name="android:windowAnimationStyle">@style/AnimBottom.Album</item>
</style> <style name="AppTheme.VzGallery" parent="@style/AppTheme.Main">
</style> <style name="AnimBottom.VzGallery" parent="@android:style/Animation.Activity">
<item name="android:activityOpenEnterAnimation">@anim/push_bottom_out</item>
<item name="android:activityOpenExitAnimation">@anim/push_bottom_out</item>
<item name="android:activityCloseExitAnimation">@anim/push_bottom_out</item>
<item name="android:activityCloseEnterAnimation">@anim/push_bottom_out</item>
</style>
<style name="AnimBottom.Album" parent="@android:style/Animation.Activity">
<item name="android:activityOpenEnterAnimation">@anim/push_bottom_enter</item>
<item name="android:activityOpenExitAnimation">@anim/push_bottom_out</item>
<item name="android:activityCloseEnterAnimation">@anim/push_bottom_out</item>
<item name="android:activityCloseExitAnimation">@anim/push_bottom_enter</item>
</style>
打开al的时候,al,vz都有动画
关闭al的时候,都没有动画
al打开另外一个activity的时候,都没有动画
当另一个activity结束的时候,al跟另一个activity都有动画
我们可以得出如下结论
(1)这四个属性,针对的都是自己
(2)open属性,是自己被打开的时候的相关动画,也就是自己出现的时候(被打开),其实就是自己跟父activity的动画情况
close属性,是自己消失的时候的动画属性(打开别人),其实就是自己跟子activity的动画情况
(3)enter属性,是出现在屏幕中,自己或者跟自己相关的其他activity
exit属性,是退出屏幕,自己或者跟自己相关的activity
theme-windowAnimationStyle 动画四个方法的意义的更多相关文章
- C#播放声音的四种方法 +AxWindowsMediaPlayer的详细用法
C#播放声音的四种方法 第一种是利用DirectX 1.安装了DirectX SDK(有9个DLL文件).这里我们只用到MicroSoft.DirectX.dll和 Microsoft.Directx ...
- WPF编程,通过Path类型制作沿路径运动的动画一种方法。
原文:WPF编程,通过Path类型制作沿路径运动的动画一种方法. 版权声明:我不生产代码,我只是代码的搬运工. https://blog.csdn.net/qq_43307934/article/de ...
- 成为Linux内核高手的四个方法
首页 最新文章 资讯 程序员 设计 IT技术 创业 在国外 营销 趣文 特别分享 更多 > - Navigation -首页最新文章资讯程序员设计IT技术- Java & Android ...
- Python进阶----反射(四个方法),函数vs方法(模块types 与 instance()方法校验 ),双下方法的研究
Python进阶----反射(四个方法),函数vs方法(模块types 与 instance()方法校验 ),双下方法的研究 一丶反射 什么是反射: 反射的概念是由Smith在1982年首次提出的 ...
- JavaScript数据类型判断的四种方法
码文不易啊,转载请带上本文链接呀,感谢感谢 https://www.cnblogs.com/echoyya/p/14416375.html 本文分享了JavaScript类型判断的四种方法:typeo ...
- js中判断数据类型的四种方法总结
js中判断数据类型的四种方法 前言 在js中,我们经常需要判断数据的类型,那么哪些方法可以用来判断数据的类型呢?哪种方法判断数据类型最准确呢? 我们来一个个分析: 1.typeof typeof是一个 ...
- 两个变量交换的四种方法(Java)
对于两种变量的交换,我发现四种方法,下面我用Java来演示一下. 1.利用第三个变量交换数值,简单的方法. (代码演示一下) class TestEV //创建一个类 { public static ...
- 织梦DedeCMS模板防盗的四种方法
织梦(DedeCMS)模板也是一种财富,不想自己辛辛苦苦做的模板被盗用,在互联网上出现一些和自己一模一样的网站,就需要做好模板防盗.本文是No牛收集整理自网络,不过网上的版本都没有提供 Nginx 3 ...
- 让一个图片在div中居中(四种方法)
第一种方法: <div class="title"> <div class="flag"></div> <div cl ...
随机推荐
- 128.C++文件操作小结
打开后缀参数 #include <fstream> #include <iostream> using namespace std; //文本读写 //文件写入 void ma ...
- Gym - 100203I I WIN 网络流
Gym - 100203I I WIN 题意:一个n*m的矩阵包含W,I,N三种字符,问相邻的字符最多能组成不重叠的WIN. 思路:比赛的时候没有发现是网络流,,居然一度以为是二分图匹配,,写了一下 ...
- Gym - 100625D Destination Unknown 最短路
http://codeforces.com/gym/100625/attachments/download/3213/2013-benelux-algorithm-programming-contes ...
- IOC DI 专题
IoC:Inversion of Control,控制反转DI:Dependency Injection,依赖注入 要理解上面两个概念,就必须搞清楚如下的问题: 参与者都有谁?依赖:谁依赖于谁?为什么 ...
- P1328 生活大爆炸版石头剪刀布
题目描述 石头剪刀布是常见的猜拳游戏:石头胜剪刀,剪刀胜布,布胜石头.如果两个人出拳一样,则不分胜负.在<生活大爆炸>第二季第8 集中出现了一种石头剪刀布的升级版游戏. 升级版游戏在传统的 ...
- LXDE桌面初始设置,Fedora27系统。
一.主题安装主题:方法1.通过软件源安装主题,默认xfce安装的主题有限不一定符合我们的口味. [root@Fedora ~]# dnf search themes #搜索可用主题 通过上面 ...
- 详解如何在vue项目中引入饿了么elementUI组件
在开发的过程之中,我们也经常会使用到很多组件库:vue 常用ui组件库:https://blog.csdn.net/qq_36538012/article/details/82146649 今天具体说 ...
- 00075_BigInteger
1.Java中long型为最大整数类型,对于超过long型的数据如何去表示呢.在Java的世界中,超过long型的整数已经不能被称为整数了,它们被封装成BigInteger对象.在BigInteger ...
- [转]LNMP环境下的Web常见问题排查(精品)
来源:http://mp.weixin.qq.com/s? __biz=MjM5NzUwNDA5MA==&mid=200596752&idx=1&sn=37ecae802f32 ...
- [Python] Finding the most common elements in an iterable
>>> import collections >>> # Tally occurrences of words in a list >>> cnt ...