使用ViewPropertyAnimator和scalY时,如何将视图锚定到顶部?

时间:2015-02-02 15:49:56

标签: android animation view

我尝试在Android(API 15)中为视图设置动画,以便通过从顶部向下扩展并通过缩小备份来隐藏,就像this jQuery slideUp()/slideDown() example一样。

我已尝试使用ViewPropertyAnimator.scaleY(float)执行此操作,如下所示:

隐藏

view.animate()
    .setInterpolator(new AccelerateDecelerateInterpolator())
    .scaleY(0f)
    .start();

显示:

view.animate()
    .setInterpolator(new AccelerateDecelerateInterpolator())
    .scaleY(1f)
    .start();

除了视图从垂直中心缩小并从垂直中心扩展而不是顶部之外,这是有效的。

有没有办法将此动画固定在顶部,仍然使用ViewPropertyAnimator?如果没有,那么最好的替代方案是什么?

1 个答案:

答案 0 :(得分:3)

根据需要调整轴心,然后再动画

view.setPivotY(0f); // 0 = top of the view

参考:https://developer.android.com/reference/android/view/View.html#setPivotY(float)