У меня есть страница по умолчанию с двумя вкладками, использующая TabBar и TabController. Все работает нормально, за исключением того, что когда я захожу на страницу, метод построения второй вкладки вызывается только тогда, когда я щелкаю, чтобы перейти на вторую вкладку. Проблема в том, что при входе на страницу я хочу, чтобы обе вкладки уже были созданы (a.k.a их методы сборки выполнены). Есть мысли?
Код иллюстрации:
//This widget is used inside a Scaffold
class TabsPage extends StatefulWidget {
@override
State<StatefulWidget> createState() => new TabsPageState();
}
class TabsPageState extends State<TabsPage> with TickerProviderStateMixin {
List<Tab> _tabs;
List<Widget> _pages;
TabController _controller;
@override
void initState() {
super.initState();
_tabs = [
new Tab(text: 'TabOne'),
new Tab(text: 'TabTwo')
];
_pages = [
//Just normal stateful widgets
new TabOne(),
new TabTwo()
];
_controller = new TabController(length: _tabs.length, vsync: this);
}
@override
Widget build(BuildContext context) {
return new Padding(
padding: EdgeInsets.all(10.0),
child: new Column(
children: <Widget>[
new TabBar(
controller: _controller,
tabs: _tabs
),
new SizedBox.fromSize(
size: const Size.fromHeight(540.0),
child: new TabBarView(
controller: _controller,
children: _pages
),
)
],
),
);
}
}