ViewAnimationUtils - 没有动画发生

ViewAnimationUtils - No animation occurs

我正在尝试使用 Circular Reveal 在单击 FAB 时在 LinearLayout 中设置动画。

点击时,视图在延迟一段时间后变为可见,但没有可见动画运行?此外,当函数反转为退出动画时,视图在动画期间不可见。

代码:

//Rest of method triggered onClick Above
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP){
        circleReveal(formcontainer,addnewbutton);
        ObjectAnimator.ofFloat(addnewbutton, "translationY", -heightbutton).start();
    }
}

public void circleReveal(LinearLayout formLayout, FloatingActionButton fab) {

    int cx = (fab.getLeft() + fab.getRight()) / 2;
    int cy = (fab.getTop() + fab.getBottom()) / 2;

    int radius = Math.max(formLayout.getWidth(), formLayout.getHeight());

    Animator reveal = createCircularReveal(formLayout, cx, cy, 0, radius);

    formLayout.setVisibility(View.VISIBLE);
    reveal.setDuration(2000);
    reveal.start();
}

非常感谢您的帮助!

[编辑] 经过测试,我注意到它只是在这个视图上失败了?我尝试过的布局中的所有其他视图都可以正常工作吗?

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:id="@+id/formcontainer"
              android:background="@android:color/white"
              android:layout_width="match_parent"
              android:layout_height="65dp"
              android:orientation="vertical"
              android:baselineAligned="false"
              android:paddingLeft="@dimen/activity_horizontal_margin"
              android:paddingRight="@dimen/activity_horizontal_margin"
              android:gravity="bottom"
              android:layout_marginBottom="0dp"
              android:elevation="4dp"
              android:layout_alignParentBottom="true">

[编辑 2] 所以,我已经部分解决了这个问题,因为动画现在可以工作了,但只有当中心不是从 FAB 计算出来的时候?

圆形动画相对于视图本身运行。所以,你的中心应该是:

int cx = fab.getWidth() / 2;
int cy = fab.getHeight() / 2;