0

我一直在尝试不同的方法来使用对象动画师获得展开/折叠动画,但到目前为止它们都没有奏效。

我已经使用了这个解决方案并且它有效,但是当我阅读文档时,它说使用 animator 来永久地为对象设置动画而不是动画更可取。

我的代码的问题是它总是从视图顶部开始,但我需要从底部展开/折叠视图。

这是我的代码:

public boolean collapse( View view, int start, int end )
{
    AnimatorSet set = new AnimatorSet();
    ObjectAnimator a = ObjectAnimator.ofFloat( view, "translationY", start, end );
    set.play( a );
    set.setDuration( 3000L );
    set.setInterpolator( new LinearInterpolator() );
    set.addListener( new AnimatorListenerAdapter()
    {
        @Override
        public void onAnimationEnd( Animator animation )
        {
        }
    } );
    set.start();
    return true;
}
4

1 回答 1

4

尝试使用ObjectAnimator.ofInt并使用 的属性名称bottom。这将从视图的底部开始动画。TranslationY 对应于视图的顶部。

于 2014-03-25T20:40:46.350 回答