如何解决Flutter-将TabBarView放在滚动条中
目前,我的代码是这样的。
return SingleChildScrollView(
child: Column(
mainAxisSize: MainAxisSize.min,children: [
if (_isLandscape)
Row(
children: [
imageFrame,Column(
children: [
myBuyFunctionality,myTabBarView,],),)
else
Column(
mainAxisSize: MainAxisSize.min,children: [
imageFrame,SizedBox(
height: 20,myBuyFunctionality,Align(
alignment: Alignment.bottomCenter,child: _isBuyNow ? buyNowButton : placeBidButton,
直到将myTabBarView放入树中,我的代码才能正常工作。它由2个这样的子窗口小部件组成。
var myTabBarView = TabBarView(
controller: _tabController,children: [
placeBidBody(),placeBidBody(),);
在placeBidBody中,我只有一个文本字段,一些文本和空格,而所有普通内容都包裹在一列中。
每当我将myTabBarView放在SingleChildScrollView中时,都会出现错误:
Horizontal viewport was given unbounded height.
请让我知道我做错了什么,或者是否有更好的方法来组织所有这些内容。
我还是比较陌生,所以非常感谢您的帮助。
解决方法
Wrap the parent widget(Column) with a limited height widget like SizedBox or
AspectRatio. Then use the Expanded widget like this:
child: SizedBox(
height: 300.0,child: Column(
children: <Widget>[
.
.
.
Expanded(
child: TabBarView(
children: <Widget>[
]))]))
第二个解决方案是
SizedBox.expand(
child: TabBarView(),)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。