前言

这个是对view 动画的补充,是一些view 动画的特殊使用场景。

回顾第一篇关于view 动画的,我介绍到view的动画都是针对元素本身的。

当我们开发view动画的时候,我们看到几个元素在做相同规律的变化,如果我们去一个个设置的话,当然是可以的,但是呢一个代码不美观。

同样我们看到,我们进入下一个页面的时候,那么有一个切换动画。这些基本都可以用view 动画实现。

正文

activity 切换效果

Intent intent=new Intent(this,demo.class);
startActivity(intent);
overridePendingTransition(R.anim.enter_anim,R.anim.enter_anim);
@Override
public void finish()
{
super.finish();
overridePendingTransition(R.anim.enter_anim,R.anim.enter_anim);
}

上面两串代码分别是入场动画,和出场动画。

值得注意的是:

动画本身一定要在startActivity和finish 后面。

其实这个也非常好理解,虽然我没有去看源代码,到时可以肯定的时候,这时候去拿到了当前被压栈的view。

fragment 也可以添加切换动画:在此就不介绍都一样。

viewgroup

viewgroup 在我理解中是容器一样,也就是里有子元素。看下它是如何控制子元素的变化吧。

<?xml version="1.0" encoding="utf-8"?>
<layoutAnimation android:delay="0.5"
android:animationOrder="normal"
android:animation="@anim/enter_anim"
xmlns:android="http://schemas.android.com/apk/res/android">
</layoutAnimation>

android:animationOrder 设置我们动画的顺序,比如说有5个元素,是让他们一个一个按照顺序来呢,还是随机呢。

如果android:animationOrder设置为0,那么是毫无一样的,无论是一个一个顺序来或者随机,如果没有延迟,那么将无意义。

android:delay 为0.5,是相当于android:animation="@anim/enter_anim"中的during而言的。

比如:

<?xml version="1.0" encode="utf-8"?>
<set
xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="200"
>
</set>

android:duration="200",那么就是延迟1秒。

groupview 去加载时候:

<ListView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layoutAnimation="@anim/layout_anim">
</ListView>

这样设置就是一开始就执行。

那么我们依然可以控制:

ListView listView=(ListView)findViewById(R.id.list);
Animation animation =AnimationUtils.loadAnimation(this,R.anim.enter_anim);
LayoutAnimationController controller =new LayoutAnimationController(animation);
controller.setDelay(0.5f);
controller.setOrder(LayoutAnimationController.ORDER_NORMAL);
listView.setLayoutAnimation(controller);

最新文章

  1. 推荐10款免费的在线UI测试工具
  2. ecshop 进入后台登录帐号出现乱码解决方法
  3. JavaScript对象字面量
  4. cocoapods 卸载,重装,高版本的使用
  5. UVa 127 - &quot;Accordian&quot; Patience
  6. Pigcms中WeixinAction的简略版流程
  7. 我的MYSQL学习心得 备份和恢复(详细)
  8. 单片机C语言实现的采用DS18B20的温度检测装置
  9. python Asyncore.dispatcher 理解
  10. Android非常实用的开源项目框架
  11. DocNan博文目录
  12. ionic项目上划刷新和下拉刷新
  13. java.lang.UnsatisfiedLinkError: D:\Tomcat\apache-tomcat-7.0.67\bin\tcnative-1.dll:
  14. Rsync+unison双向文件同步
  15. 【转】关于Log4j
  16. 关于Kafka high watermark的讨论2
  17. [No0000140]WMI使用的WIN32_类库名
  18. 【原】Win7 host 与 virtualbox ubuntu guest 相同ping通
  19. 学习JS的心路历程-声明
  20. CentOS每次开机都要ifup eth0的解决方法小结

热门文章

  1. js加密(十一)yhz566 md5
  2. Python输出三位数以内的水仙花数
  3. shell脚本中 “set -e” 的作用
  4. 【剑指Offer面试编程题】题目1391:顺时针打印矩阵--九度OJ
  5. 如何更改linux(centos)下的Apache http端口号
  6. S7-300 与TP900 组态 棒图 量表 滚动条 滚动条设置的值通过IO输出域显示出来
  7. 检测皮肤PH值、感知你的便意,健康是可穿戴设备的新风口?
  8. JS数据统计表 highcharts.js的运用
  9. redis中关闭rdb跟aof
  10. Derivative Pricing_2_Vasicek