1

Итак, у меня есть CoordinatorLayout с AppBarLayout и CollapsingToolbarLayout. Вот как это выглядит, когда его расширенное (левое изображение) и разрушилось (правое изображение)AppBarLayout не полностью разрушается и расширяется только до тех пор, пока свиток не достигнет вершины

enter image description here enter image description here

Первая проблема, у меня есть, что, когда я прокручиваю вниз синий FrameLayout, содержащий два TextViews делает не разрушаться. Я хочу, чтобы только панель инструментов была видимой, когда полностью рухнула. Я пробовал пару вещей, таких как изменение флажков прокрутки и перемещение вокруг представлений и групп просмотра, но без успеха. Вот xml, и у меня также установлен параметр windowTranslucentStatus равным true, а заголовок панели инструментов - пустым.

<android.support.design.widget.CoordinatorLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:fitsSystemWindows="true" 
> 

<android.support.design.widget.AppBarLayout 
    android:id="@+id/main.appbar" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:theme="@style/AppTheme.AppBarOverlay" 
    android:fitsSystemWindows="true" 
    > 

    <android.support.design.widget.CollapsingToolbarLayout 
     android:id="@+id/main.collapsing" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:fitsSystemWindows="true" 
     app:layout_scrollFlags="scroll|exitUntilCollapsed" 
     app:contentScrim="?colorPrimary" 
     > 

     <ImageView 
      android:id="@+id/main.imageview.placeholder" 
      android:layout_width="match_parent" 
      android:layout_height="200dp" 
      android:scaleType="centerCrop" 
      android:src="@drawable/material_flat" 
      app:layout_collapseMode="parallax" 
      android:fitsSystemWindows="true" 
      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:title="" 
      app:layout_scrollFlags="scroll|enterAlways|snap" 
      app:layout_collapseMode="pin" 
      /> 
    </android.support.design.widget.CollapsingToolbarLayout> 


    <FrameLayout 
     android:id="@+id/main.framelayout.title" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="bottom|center_horizontal" 
     android:background="?colorPrimary" 
     android:orientation="vertical" 
     app:layout_scrollFlags="scroll|enterAlways" 
     > 

     <LinearLayout 
      android:id="@+id/main.linearlayout.title" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center" 
      android:orientation="vertical" 
      > 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_gravity="center_horizontal" 
       android:gravity="bottom|center" 
       android:text="Information" 
       android:textColor="@android:color/white" 
       android:textSize="30sp" 
       /> 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_gravity="center_horizontal" 
       android:layout_marginTop="4dp" 
       android:text="Tagline" 
       android:textColor="@android:color/white" 
       /> 

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

<android.support.v4.widget.NestedScrollView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    app:layout_behavior="@string/appbar_scrolling_view_behavior" 
    tools:context="yu.heetae.android.materialdesign.ScrollingActivity" 
    tools:showIn="@layout/activity_scrolling"> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_margin="@dimen/text_margin" 
     android:text="@string/large_text"/> 

</android.support.v4.widget.NestedScrollView> 

<android.support.design.widget.FloatingActionButton 
    android:id="@+id/fab" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_margin="@dimen/fab_margin" 
    app:layout_anchor="@id/main.framelayout.title" 
    app:layout_anchorGravity="top|end" 
    app:srcCompat="@android:drawable/ic_dialog_email"/> 

Вторая проблема у меня в том, что при прокрутке в ImageView расширяется около 60% от его высоты, а затем, когда скроллинг достигает вершины последней 40% расширяется. Я хочу, чтобы изображение было полностью развернуто после прокрутки, а не частично. Ниже приведены некоторые изображения, которые помогают объяснить это. Левое изображение - это когда вы обычно прокручиваете изображение, а правый - когда вы, наконец, прокручиваете вверх.

enter image description here enter image description here

ответ

1

Я столкнулся с аналогичной проблемой частичного открытия панели инструментов. Я добавил привязку к тегу scroll_flags. Надеюсь, это то, о чем вы просили.

<android.support.design.widget.CollapsingToolbarLayout 
      android:id="@+id/collapsing_toolbar" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:fitsSystemWindows="true" 
      app:contentScrim="?attr/colorPrimary" 
      app:layout_scrollFlags="scroll|exitUntilCollapsed|snap">