美文网首页Android
用LayoutTransition在View动态显示和隐藏时候加

用LayoutTransition在View动态显示和隐藏时候加

作者: 甲骨文 | 来源:发表于2015-03-25 18:05 被阅读14412次

    在Android应用开发的时候经常会用到ViewsetVisibility()方法来动态隐藏和显示view,但是这样子是没有过渡动画的,变化的时候会显得很生硬。
    LayoutTransition是一个在4.0新引入的Api,主要功能是在ViewGroup的layout发生变化的时候能够自动创建动画。具体使用的时候,首先创建一个LayoutTransition对象,并在容器布局调用setLayoutTransition(LayoutTransition)方法。这样,每当有子view从容器中出现或消失的时候,默认的animator就会被自动调用。当然,你也可以通过setAnimator()来设置自定义的动画。

    ViewGroup  container = (ViewGroup) findViewById(R.id.container);
    LayoutTransition transition = new LayoutTransition();
    container.setLayoutTransition(transition);
    

    此外还有一个更简单地使用方法,在xml文件中我们在容器的中下面一句代码:

    android:animateLayoutChanges="true"
    

    在4.1 JellyBean上还有一个增强的功能,可以在容器内的子view的layout发生变化时也播放动画,用法如下。

    LayoutTransition transition = container.getLayoutTransition();
    transition.enableTransitionType(LayoutTransition.CHANGING);
    

    相关文章

      网友评论

      本文标题:用LayoutTransition在View动态显示和隐藏时候加

      本文链接:https://www.haomeiwen.com/subject/htggxttx.html