Android Frame 设置过场动画

我们可以调用 FragmentTransaction 对象的 setTransition(int transit) 为 Fragment 指定标准的过场动画,transit 的可选值如下:

说明
TRANSIT_NONE 无动画
TRANSIT_FRAGMENT_OPEN 打开形式的动画
TRANSIT_FRAGMENT_CLOSE 关闭形式的动画

注意: 一定要注意 Fragment 是使用的 v4包 还是 app 包 下的 Fragment

上面的标准过程动画是两个都可以调用的,而不同的地方则在于自定义转场动画

setCustomAnimations()

  • app 包下的 Fragment

    setCustomAnimations(int enter, int exit, int popEnter, int popExit)
    

    分别是添加,移除,入栈,以及出栈时的动画

    对应的动画类型是:属性动画(Property),就是动画文件的根标签要是

    <objectAnimator>
    <valueAnimator>
    <set>
    
  • v4包下的 Fragment

    v4包下的则支持两种 setCustomAnimations()

    public abstract FragmentTransaction setCustomAnimation(@AnimRes int enter,@AnimRes int exit )
    
    public abstract FragmentTransaction setCustomAnimation(@AnimRes int enter,@AnimRes int exit, @AnimRes int popEnter, @AnimRes int PopExit)
    
    对应的动画类型是:补间动画(Tween)
    

onCreateAnimator()

android.support.v4.app

public Animation onCreateAnimator(int transit, boolean enter, int nextAnim)

android.app

public Animator onCreateAnimator(int transit, boolean enter, int nextAnim)

Android 基础教程

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.