スクロールの動きとToolbarの表示の連動の仕方にはいろいろある。
前回のように、activity_main.xmlで、
<?xml version="1.0" encoding="utf-8"?> <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.support.design.widget.AppBarLayout android:id="@+id/appbar1" android:layout_width="match_parent" android:layout_height="wrap_content" > <Toolbar android:id="@+id/toolbar1" android:layout_width="match_parent" android:layout_height="?android:attr/actionBarSize" android:background="@color/colorPrimary" app:layout_scrollFlags="scroll|enterAlways" /> </android.support.design.widget.AppBarLayout> <android.support.v4.widget.NestedScrollView android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <TextView android:id="@+id/textview_longtext" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="@string/textview_longtext_text" /> </android.support.v4.widget.NestedScrollView> </android.support.design.widget.CoordinatorLayout>
AppBarLayoutでapp:layout_scrollFlags="scroll|enterAlways"の場合は、

1番下まで行って、上に戻ろうとすると、

すぐToolbarが出てくる。
どんな位置からでも上に戻ろうとしたときにToolbarが連動して出てくる。
<?xml version="1.0" encoding="utf-8"?> <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.support.design.widget.AppBarLayout android:id="@+id/appbar1" android:layout_width="match_parent" android:layout_height="wrap_content" > <Toolbar android:id="@+id/toolbar1" android:layout_width="match_parent" android:layout_height="?android:attr/actionBarSize" android:background="@color/colorPrimary" app:layout_scrollFlags="scroll|enterAlwaysCollapsed" /> </android.support.design.widget.AppBarLayout> <android.support.v4.widget.NestedScrollView android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <TextView android:id="@+id/textview_longtext" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="@string/textview_longtext_text" /> </android.support.v4.widget.NestedScrollView> </android.support.design.widget.CoordinatorLayout>
しかし、app:layout_scrollFlags="scroll|enterAlwaysCollapsed"にすると、

下まで行って、上に戻っても、

出てこない。

リストの1番上のところまで戻って初めて出てくる。
スクロールにはもうひとつ、
app:layout_scrollFlags="scroll|exitUntilCollapsed"
というフラグがあるが、これはCollapsingToolbarLayoutで使う。
CollapsingToolbarLayout | Android Developers
Androidのマテリアルデザイン ~スクロール連動~ (2/3):CodeZine(コードジン)
これらを使うと、Toolbarを伸縮しつつ、一定のところで止める事ができる。
<?xml version="1.0" encoding="utf-8"?> <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.support.design.widget.AppBarLayout android:id="@+id/appbar1" android:layout_width="match_parent" android:layout_height="200dp" > <android.support.design.widget.CollapsingToolbarLayout android:id="@+id/collapsing1" android:layout_width="match_parent" android:layout_height="match_parent" app:layout_scrollFlags="scroll|exitUntilCollapsed" > <Toolbar android:id="@+id/toolbar1" android:layout_width="match_parent" android:layout_height="?android:attr/actionBarSize" android:background="@color/colorPrimary" app:layout_collapseMode="pin" /> </android.support.design.widget.CollapsingToolbarLayout> </android.support.design.widget.AppBarLayout> <android.support.v4.widget.NestedScrollView android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <TextView android:id="@+id/textview_longtext" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="@string/textview_longtext_text" /> </android.support.v4.widget.NestedScrollView> </android.support.design.widget.CoordinatorLayout>
AppBarLayoutで200dpにすることで、最初の高さは200dpになる。
CollapsingToolbarLayoutを中に入れて、そちらにapp:layout_scrollFlags="scroll|exitUntilCollapsed"を指定。
Toolbarでapp:layout_collapseMode="pin"を指定。
一番小さくなった時の高さは、android:layout_height="?android:attr/actionBarSize"に基づくから、Toolbarのデフォルトの高さのはず。

最初は200dpだからこれぐらい大きくなる。

下に行くとどんどん小さくなる。

あれ?止まらない・・・。

消えてしまった・・・。
本当ならToolbarの高さより小さくはならないようにどこも書いてあるのだが・・・。
いろいろなCoordinatorLayoutパターン - Qiita
上記の記事などいろいろ見たけど、
android:minHeight="?android:attr/actionBarSize"を付けたら、

ここから、

小さくなって、

ここからは小さくならなくなった。
でも、付けてない記事もあるので何が違うのだろうか・・・。