onOffsetChanged侦听器调整大小/重定位...重绘会导致延迟滚动

时间:2018-01-29 20:51:41

标签: android performance kotlin android-constraintlayout android-appbarlayout

我有一个CollapsingToolbarLayout,我在内部调整大小并使用ConstraintLayout

移动崩溃/解折叠视图
appbar.onOffsetChanged { appBarLayout, verticalOffset -> 
    //... do math
    aConstrainedView.requestLayout()
}

由于requestLayout()重新绘制整个层次结构,因此滚动开始滞后很长时间。

在那种情况下滚动之后是否有一些优化或任何其他足够的方法来修改视图?

<android.support.design.widget.AppBarLayout
        android:id="@+id/appbar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@android:color/transparent"
        android:fitsSystemWindows="true">

  <android.support.design.widget.CollapsingToolbarLayout
        android:id="@+id/collapsingToolbar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:minHeight="?attr/actionBarSize"
        app:layout_scrollFlags="scroll|exitUntilCollapsed">


        <android.support.constraint.ConstraintLayout
            android:id="@+id/appBarCL"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">


            <ImageView />

            <ImageView />

            <View />

            <View/>

            <ImageView />

            <ImageView />

            <TextView />

            <TextView />


            <GridLayout>

                <TextView />

                <TextView />

                <TextView />

                <TextView />

            </GridLayout>

            <android.support.constraint.Guideline />

            <android.support.constraint.Guideline/>

            <android.support.constraint.Guideline />

      </android.support.constraint.ConstraintLayout>>


  </android.support.design.widget.CollapsingToolbarLayout>

</android.support.design.widget.AppBarLayout>

0 个答案:

没有答案