我有一个包含项目列表的TabBarView,我为每个项目分配了一个Navigator.push方法。目前,此方法将跳转到新页面。
我的问题是,是否可以导航到 TabBarView 正文中的新页面?这意味着我想导航到另一个页面,同时将所有顶部应用栏和底部导航栏保留在屏幕上。
是的,您需要将TabBarView
放在TabController
中:
import 'package:flutter/material.dart';
void main() {
runApp(TabBarDemo());
}
class TabBarDemo extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: DefaultTabController(
length: 3,
child: Scaffold(
appBar: AppBar(
bottom: TabBar(
tabs: [
Tab(icon: Icon(Icons.directions_car)),
Tab(icon: Icon(Icons.directions_transit)),
Tab(icon: Icon(Icons.directions_bike)),
],
),
title: Text('Tabs Demo'),
),
body: TabBarView(
children: [
Icon(Icons.directions_car),
Icon(Icons.directions_transit),
Icon(Icons.directions_bike),
],
),
),
),
);
}
}
取自 https://flutter.io/docs/cookbook/design/tabs