返回首页 Android&Java 技术笔记

基础

构建

测试

定制

视野

最佳实践

深入

杂谈

后端

前端

安卓系统动效

系统API

入门博客系列

Backport lib

自定义Activity的过场动效

Fragment过场动效

mFragmentManager.beginTransaction()
                .setCustomAnimations(R.anim.slide_down, R.anim.slide_up, R.anim.slide_down, R.anim.slide_up)
                .add(android.R.id.content, new SelfHomeFragment(), SelfHomeFragment.class.getName())
                .commit();

setCustomAnimations调用的顺序一定要是第一个,否则会不起效。
使用add、remove,则会有两层Fragment同时显示的效果。

Fragment share animation

Transition Animations

  • property animator
    • 通过动画API改变view的属性(位置),动画结束后,改变view的位置;
    • AnimatorObjectAnimator.ofFloat(Object target, String propertyName, float... values)、``
  • 基于Scene的动效:系统自动检测两个Scene之间的区别,然后用动效进行过渡;
  • Scene可以用代码创建,也可以由xml定义;
  • ChanngeBoundsFadeAutoTransition,...,TransitionSetAutoTransition.setOrdering()TransitionSet.setOrdering()
  • 变化的View要有公共的父Layout;
  • 无公共父Layout:setReparent(),但是效果并不是十分完美;