CollapsingToolbarLayoutを使ったスクロール時のエフェクトについて

More than 3 years have passed since last update.

CollapsingToolbarLayoutを使って、スクロール時にツールバーの部分が伸縮するようなエフェクトを実現できる。

しかしながら若干注意点があり、意外と日本語のブログ等には載っていなかったのでメモ。

このエフェクトはRecyclerViewやNestedScrollViewなどの nested scrolling が有効な物のみ

正常に動作する。

LayoutクラスやListViewに

app:layout_behavior="@string/appbar_scrolling_view_behavior" 

をつけたところで動いたりはしない。

この情報が抜けているブログが多かったので最初はハマってしまった。

ListViewでも

ListView#setNestedScrollingEnabled(boolean)

でtrueを設定すれば動くが、APIレベルが21と高く、4.x系もサポートしたい場合は

RecyclerViewを使ってリストを実装するしか無いようです。

大体の使いかた自体はググると色々サンプルがでるのでそちらを参照。