为什么当我将可滚动小部件包装在堆栈内时滚动不起作用

问题描述 投票:0回答:1

`导入'package:flutter/material.dart'; 导入'包:trekmate_project/widgets/choice%20chips/scroll_sample.dart';

类 ContainerSample 扩展 StatelessWidget { const ContainerSample({super.key});

@覆盖 小部件构建(BuildContext上下文){ 返回脚手架( 主体:SingleChildScrollView( 孩子:堆栈( 孩子们: [ 容器( 宽度:双无穷大, 高度:300, 颜色: 颜色.琥珀色, ), 定位( 顶部:100, 孩子:大小框( 子:ScrollSample(), ), ), ], ), ), ); } }

//滚动示例屏幕

导入'包:flutter/material.dart'; 导入'包:trekmate_project/widgets/choice%20chips/choice_chips.dart';

类 ScrollSample 扩展 StatelessWidget { const ScrollSample({super.key});

@覆盖 小部件构建(BuildContext上下文){ 返回 const SingleChildScrollView( 滚动方向: Axis.horizontal, 孩子:大小框( 身高:80, 孩子:填充( 填充:EdgeInsets.only( 左:20, 右:10, ), 孩子:行( 孩子们: [ ChoiceChipsWidget(buttonText: '喀拉拉邦'), ChoiceChipsWidget(buttonText: '孟买'), ChoiceChipsWidget(buttonText: '卡纳塔克邦'), ChoiceChipsWidget(buttonText: '果阿'), ChoiceChipsWidget(buttonText: '克什米尔'), ChoiceChipsWidget(buttonText: '加尔各答'), ChoiceChipsWidget(buttonText: 'Hyderbad'), ChoiceChipsWidget(buttonText: 'Chennai'), ], ), ), ), ); } }

我用sizedbox小部件包裹小部件,但它也不起作用。我该怎么办,我找不到任何相关的解决方案。

flutter stack flutter-positioned
1个回答
0
投票

这是因为

ScrollSample
宽度不受约束,添加如下宽度约束:

            Positioned(
              top: 100,
              child: SizedBox(
                width: MediaQuery.of(context).size.width,
                child: const ScrollSample()
              )
            )

© www.soinside.com 2019 - 2024. All rights reserved.