AppBar
では背景色を指定できるが、それにグラデーションを効かせたい。しかし、AppBar
のcolor
にはGradient
を設定できないのでAppBar
をラップしたGradientAppBar
を実装してみる。
PreferredSizeWidget
StatelessWidget
をextends
した新しいクラスを定義したいが、Scaffold
のappBar
のクラスはPreferredSizeWidget
で宣言されているため、PreferredSizeWidget
のinterface
を実装しておく必要がある。
そこでGradientAppBar
classはPreferredSizeWidget
をimplements
してpreferredSize
をoverride
する。Gradient
とAppBar
をメンバ変数とし、指定できるようにする。preferredSize
はAppBar
のpreferredSize
をそのまま使う。
GradientAppBarの使用例
GradientAppBar
を実際に使ってみた例。
gradient
にLinearGradient
をtopCenter
からtopBottom
へのグラデーションとし、カラーを二色設定した。
Flutterを使ったアプリをリリースしてます。良ければ使ってみてください。