やりたいこと
方法
回避したい View を CoordinatorLayout
の内側に配置して app:layout_dodgeInsetEdges
を指定する
<CoordinatorLayout>
<!-- 回避したいView -->
<View app:layout_dodgeInsetEdges="bottom" />
</CoordinatorLayout>
調べた
24.2.0 のバージョンで
CoordinatorLayout.Behavior
を継承してカスタムする方法からapp:layout_dodgeInsetEdges
を設定する方法に変わったようです。下から以外の他の方向からの Inset に対応したい場合は
all
を設定する方法があります。
https://twitter.com/yuichi_araki/status/766129341382078468
あと FAB が Snackbar をよける動作を一般化した app:layout_dodgeInsetEdges (よける) と app:layout_insetEdge (よけさせる) も使って欲しい。
— Yuichi Araki (@yuichi_araki) 2016年8月18日
- つまり、 Snackbar には
app:layout_insetEdge
の属性が付与されているということみたいです。
この機能が実装されてから随分経つはずですが、知りませんでした。