Во-первых, это конечный результат, который я хочу получить.
Свернуто:
Расширено:
Выше 2 скриншота из нативного приложения Java для Android.Мне нужно получить тот же эффект, используя Flutter.
Мой код Flutter для создания панели приложений:
return new Scaffold(
body: NestedScrollView(
headerSliverBuilder: (BuildContext context, bool innerBoxIsScrolled) {
return <Widget>[
SliverAppBar(
expandedHeight: 130.0,
floating: false,
pinned: true,
flexibleSpace: FlexibleSpaceBar(
title: new Column(
mainAxisAlignment: MainAxisAlignment.start,
mainAxisSize: MainAxisSize.min,
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
new Text(
widget.drawerItems[_selectedDrawerIndex].title,
),
new Text(
globals.cityName,
style: new TextStyle(
color: Color.fromARGB(255, 240, 240, 240),
fontWeight: FontWeight.w300
),
)
]
),
),
),
];
},
body: _getDrawerItemWidget(_selectedDrawerIndex),
),
drawer: new Drawer(
child: new Column(
children: <Widget>[
new UserAccountsDrawerHeader(
accountName: new Text("Gość"), accountEmail: null),
new Column(children: drawerOptions)
],
),
));
Однако, эффект не тот, который мне нужен, пожалуйста, посмотрите:
Проблемы:
- Свернутый режим: неправильно выровненный заголовок / подзаголовок
- Расширенный режим: заголовок / субтитры должны быть выровнены по левому краю экрана под кнопкой меню гамбургера
- Цвета: все пространство панели приложения должно получить цвет строки состояния в расширенном режиме
У вас есть идеи, как мне получить требуемый результат во Флаттере?