2

更新 我正在研究这个问题,因为当我手动更改垫片的大小时,它会导致卡顿,并认为这CollapsingToolbarLayout将有助于修复它。阅读https://stackoverflow.com/a/16103503/2482564帮助我通过使用 ObjectAnimator 并将其持续时间设置为 0 来修复口吃。

如果有人有解决方案,我会保持开放状态CollapsingToolbarLayout

原始问题

我正在尝试使用CoordinatorLayout, AppBarLayout,和- 来实现以下行为CollapsingToolbarLayout,无论哪个适合该任务...ToolbarTabLayout

我希望我的初始视图看起来像这个模型 在此处输入图像描述

向上滚动时的行为应该是:

  1. 黄色标记的区域第一次消失
  2. 标记为蓝色的区域第二次消失 - 它只是一个有颜色的区域,没有文字
  3. 以粉红色标记的区域 - 选项卡区域,保留在屏幕上,位于屏幕顶部

我尝试使用cheesesquare示例并使用下面的代码修改了include_list_viewpager,但是我得到了带有缩小标题的正常折叠标签行为

    <android.support.design.widget.AppBarLayout
    android:id="@+id/appbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">

    <android.support.design.widget.CollapsingToolbarLayout
        android:id="@+id/collapsing_toolbar"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fitsSystemWindows="true"
        android:minHeight="50dp"
        android:background="@color/cardview_dark_background"
        app:layout_scrollFlags="scroll|exitUntilCollapsed">


        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:layout_scrollFlags="scroll|enterAlways|snap"
            app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="200dp"
            android:layout_marginTop="50dp"
            android:background="@color/cardview_shadow_start_color"
            android:gravity="top"
            android:orientation="vertical"
            app:layout_collapseMode="pin">

            <android.support.design.widget.TabLayout
                android:id="@+id/tabs"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:background="@color/cardview_light_background"/>
        </LinearLayout>

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

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

知道应该改变什么以获得我想要的行为吗?我尝试了其他手动更改间隔区域大小的方法,但由于我在滚动事件的中间介入,它会导致屏幕闪烁

4

1 回答 1

0

从 CollapsingToolbarLayout 中删除 app:layout_scrollFlags="scroll|exitUntilCollapsed"

于 2015-11-04T02:31:03.387 回答