为什么我的视图组(线性布局)没有动画?

Why my viewgroup (linear layout) is not animating?

我不知道为什么我的线性布局 (ll_header) 没有动画,即使我在滚动 recylcer 视图时得到正确的回调。

我的视图组甚至没有从它的位置移动

以前我也曾多次从事对象动画师的工作,他们工作得非常好,我在这里也这样做,但我的观点根本没有移动

我也尝试过使用静态值,但它仍然处于原位

private fun addListener() {
    rv_demo.addOnScrollListener(object : RecyclerView.OnScrollListener() {
        override fun onScrolled(recyclerView: RecyclerView, dx: Int, dy: Int) {
            super.onScrolled(recyclerView, dx, dy)

            objectAnimator = ObjectAnimator.ofInt(ll_header,"translationY", dy)

            objectAnimator.start()
        }
    })
}

这是我在 xml

中的布局
<RelativeLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:gravity="center_horizontal"
        android:orientation="vertical">

    <androidx.recyclerview.widget.RecyclerView
            android:id="@+id/rv_demo"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"/>

    <LinearLayout
            android:id="@+id/ll_header"
            android:layout_width="match_parent"
            android:layout_height="100dp"
            android:orientation="vertical"
            android:background="@android:color/holo_blue_bright"/>

</RelativeLayout>

请帮忙...提前致谢。

我想到了两件事。

  1. translationY 是浮点值。所以你应该尝试使用 ObjectAnimator.ofFloat()
  2. 检查您是否以某种方式从开发者设置中禁用了动画