我正在try 创建选项卡栏,这将位于页面的中间(描述小工具必须在顶部).
问题是,我必须手动设置包含TabBarView的容器小部件的高度.如果没有这个高度,我会得到错误Horizontal viewport was given unbounded height.
.
顶级小部件:
Widget build(BuildContext context) {
return Scaffold(
appBar: CustomAppBar(),
body: SingleChildScrollView(
child: Column(
children: <Widget>[Description(), Tabs()],
),
),
);
}
选项卡小工具:
class Tabs extends StatelessWidget {
final _tabs = [
Tab(
icon: Icon(Icons.menu),
text: 'Menu',
),
Tab(
icon: Icon(Icons.mode_comment),
text: 'Reviews',
)
];
@override
Widget build(BuildContext context) {
return DefaultTabController(
length: _tabs.length,
child: Column(
children: <Widget>[
TabBar(
labelColor: PickColors.black,
indicatorSize: TabBarIndicatorSize.tab,
tabs: _tabs,
),
Container(
width: double.infinity,
height: 200, // I need to remove this and make height dynamic
child: TabBarView(
children: <Widget>[MenuTab(), ReviewsTab()],
),
),
],
));
}
}
由于选项卡内容将是动态的,因此高度也将是动态的.我不能在这里使用静态高度.
对于静态高度的容器是否有其他 Select ?如何使标签的高度动态?