如何在中间滚动中显示额外的区域?

时间:2019-05-25 11:41:34

标签: android android-appbarlayout

我想达到3个州。
当滚动位置为9时,则显示全部内容为500 dp。用enterAlways完成了。
当我向下滚动时,我想将appbar折叠到最小高度。我得到的最小高度为88并退出UntillCollapsed。
当我向上滚动屏幕中间的某个位置时,我想用额外的40dp扩大最小面积,因此将显示128dip。在这里,我堆积了,唯一的想法就是将监听器添加到appbar并以编程方式将minheight增加到128。

    <com.google.android.material.appbar.AppBarLayout
        android:id="@+id/app_bar"
        android:layout_width="match_parent"
        android:layout_height="500dip"
        android:theme="@style/AppTheme.AppBarOverlay">

        <com.google.androidstudio.motionlayoutexample.utils.CollapsibleToolbar xmlns:app="http://schemas.android.com/apk/res-auto"
            android:id="@+id/motionLayout"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="#1e376b"
            android:minHeight="88dip"
            app:layoutDescription="@xml/motion"
            app:layout_scrollFlags="scroll|enterAlways|snap|exitUntilCollapsed">


            <Button
                android:id="@+id/m_button"
                android:layout_width="60dip"
                android:layout_height="40dip" />

        </com.google.androidstudio.motionlayoutexample.utils.CollapsibleToolbar>

    </com.google.android.material.appbar.AppBarLayout>

    <androidx.core.widget.NestedScrollView xmlns:app="http://schemas.android.com/apk/res-auto"
        android:id="@+id/scrollable"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:layout_behavior="@string/appbar_scrolling_view_behavior">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_margin="@dimen/text_margin"
            android:text="1\n2\n\3\n4\n5\n6\n7\n8\n\9\n10\n11\n12\n13\n\14\n1\n2\n\3\n4\n5\n6\n7\n8\n\9\n10\n11\n12\n13\n\14" />

    </androidx.core.widget.NestedScrollView>
</androidx.coordinatorlayout.widget.CoordinatorLayout>

0 个答案:

没有答案