Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ExpansionFile内部的ListView不';行不通_Listview_Dart_Flutter_Flutter Sliver - Fatal编程技术网

ExpansionFile内部的ListView不';行不通

ExpansionFile内部的ListView不';行不通,listview,dart,flutter,flutter-sliver,Listview,Dart,Flutter,Flutter Sliver,listview在ExpansionFile中不工作 我试图在ExpansionFile中显示listview.builder,但它引发了一些异常 Card( child: ExpansionTile( leading: Icon( Icons.stars, color: Colors.pinkAccent, ), title: Text('Reviews',

listview在ExpansionFile中不工作

我试图在ExpansionFile中显示listview.builder,但它引发了一些异常

Card(
       child: ExpansionTile(
           leading: Icon(
              Icons.stars,
              color: Colors.pinkAccent,
           ),
           title: Text('Reviews',
                  style: Theme.of(context).textTheme.title,
                          ),
                children: [
                    ListView.builder(
                        itemCount: 5,
                        itemBuilder: (_, i) {
                          return (Text('item $i'));
                     })
                   ],
             ),
     ),
我想做到这一点


ListView
的垂直大小是无界的,因此无法进行渲染。将
ListView
的属性设置为
true
以解决此问题。

将包覆面提取和控制器都添加到ListView.builder中

final ScrollController _scrollController = ScrollController();


    ListView.builder(
          controller: _scrollController,
           shrinkWrap: true,
    ...

以上所有解决方案都不能按预期工作。所以我解决了这个问题。您需要在Listview.builder()中使用此选项扩展文件子文件中:

shrinkWrap: true,
physics: NeverScrollableScrollPhysics(),
完整代码:

                ExpansionTile( 
                    onExpansionChanged: (e){
                      //Your code
                    },
                    title: Text("You title text"),
                    children: [
                    ListView.builder(
                     shrinkWrap: true,
                     physics: NeverScrollableScrollPhysics(),
                     scrollDirection: Axis.vertical,
                     itemCount: items.length,
                     itemBuilder: (BuildContext context, int index){
                     return Text(items[index]);
                      }
                   )
                      
                    ],
                  ),

ListView.builder中添加
shrinkWrap:true,
,感谢它能正常工作,但每次我滚动ExpansionFile````````[ERROR:flatter/shell/common/shell.cc(184)]时它都会引发此异常。Dart错误:未处理的异常:E/flatter(8182):'package:flatter/src/widgets/page_view.dart':失败的断言:第96行位置7:'positions.isNotEmpty':在生成PageView之前无法访问PageController.page。E/flatter(8182):#0断言错误。doThrowNew(dart:core/runtime/liberrors\u patch.dart:40:39)E/flatter(8182):#1断言错误。throwNew(dart:core/runtime/liberror\u patch.dart:36:5)``这又是一个异常
[错误:flatter/shell/common/shell.cc(184)])省道错误:未处理的异常:E/flatter(8182):'package:flatter/src/widgets/page_view.dart':失败的断言:第96行位置7:'positions.isNotEmpty':在生成PageView之前无法访问PageController.page。E/flatter(8182):#0断言错误。doThrowNew(dart:core/runtime/liberrorspatch.dart:40:39)E/flatter(8182):#1断言错误。throwNew(dart:core/runtime/liberrorspatch.dart:36:5)
这一定是您的UI中的其他内容。我在你的代码中的任何地方都看不到
PageView
                ExpansionTile( 
                    onExpansionChanged: (e){
                      //Your code
                    },
                    title: Text("You title text"),
                    children: [
                    ListView.builder(
                     shrinkWrap: true,
                     physics: NeverScrollableScrollPhysics(),
                     scrollDirection: Axis.vertical,
                     itemCount: items.length,
                     itemBuilder: (BuildContext context, int index){
                     return Text(items[index]);
                      }
                   )
                      
                    ],
                  ),