This commit is contained in:
Yegor Vialov 2018-11-14 18:03:50 +02:00
parent 57c30917b3
commit 874410964d

View File

@ -491,10 +491,15 @@ class _MainPageState extends State<MainPage> with WidgetsBindingObserver {
final GlobalKey<ScaffoldState> _scaffoldKey = new GlobalKey<ScaffoldState>();
Scaffold _buildScaffold(bool empty) {
return Scaffold(
key: _scaffoldKey,
appBar: AppBar(
Widget _buildScaffoldBody(bool empty) {
return NestedScrollView(
headerSliverBuilder: (BuildContext context, bool innerBoxIsScrolled) {
return <Widget>[
SliverAppBar(
//expandedHeight: 100.0,
floating: true,
pinned: true,
primary: true,
title: _buildAppTitle(),
leading: IconButton(
icon: Icon(Icons.menu),
@ -505,13 +510,18 @@ class _MainPageState extends State<MainPage> with WidgetsBindingObserver {
});
},
),
primary: true,
flexibleSpace: FlexibleSpaceBar(
centerTitle: false,
//title: _buildAppTitle(),
),
bottom: empty ? null : TabBar(
tabs: buildUIViewTabs(),
isScrollable: true,
),
),
drawer: _buildAppDrawer(),
];
},
body: empty ?
Center(
child: Column(
@ -526,7 +536,7 @@ class _MainPageState extends State<MainPage> with WidgetsBindingObserver {
),
)
:
_homeAssistant.buildViews(context, _useLovelaceUI)
_homeAssistant.buildViews(context, _useLovelaceUI),
);
}
@ -534,11 +544,19 @@ class _MainPageState extends State<MainPage> with WidgetsBindingObserver {
Widget build(BuildContext context) {
// This method is rerun every time setState is called.
if (_homeAssistant.ui == null || _homeAssistant.ui.views == null) {
return _buildScaffold(true);
return Scaffold(
key: _scaffoldKey,
drawer: _buildAppDrawer(),
body: _buildScaffoldBody(true)
);
} else {
return DefaultTabController(
length: _homeAssistant.ui.views.length,
child: _buildScaffold(false)
return Scaffold(
key: _scaffoldKey,
drawer: _buildAppDrawer(),
body: DefaultTabController(
length: _homeAssistant.ui?.views?.length ?? 0,
child: _buildScaffoldBody(false),
),
);
}
}