Flutter 在何处定义命名参数';条子';

Flutter 在何处定义命名参数';条子';,flutter,flutter-layout,Flutter,Flutter Layout,因此,我根据我找到的示例创建了一个基于小片段的AppBar,并且遇到了一个错误命名参数'slivers'未定义 我的代码看起来有点像这样(我知道我可能把条子放错地方了,但是如果能帮助理解这个问题,我们将不胜感激) 小部件构建(构建上下文){ 返回脚手架( 背景颜色:Colors.white, 浮动操作按钮:浮动操作按钮( 背景颜色:Colors.white, 按下:(){}, 子:图标( 社区材料管理员, 颜色:颜色,黑色, ), ), 条子:[//*这里有问题的条子* 滑杆( 对,, 扩展高度

因此,我根据我找到的示例创建了一个基于小片段的AppBar,并且遇到了一个错误
命名参数'slivers'未定义

我的代码看起来有点像这样(我知道我可能把条子放错地方了,但是如果能帮助理解这个问题,我们将不胜感激)

小部件构建(构建上下文){
返回脚手架(
背景颜色:Colors.white,
浮动操作按钮:浮动操作按钮(
背景颜色:Colors.white,
按下:(){},
子:图标(
社区材料管理员,
颜色:颜色,黑色,
),
),
条子:[//*这里有问题的条子*
滑杆(
对,,
扩展高度:256.0,
flexibleSpace:FlexibleSpaceBar(
标题:文本(“po”),
),
),
],
正文:ListView.builder(
itemCount:tracks.length,
itemBuilder:(BuildContext,int-index){//itemBuilder的其余部分在这里继续

事实上,
片段
字段没有为
脚手架
定义。在
嵌套滚动视图
中包装应用栏和列表视图,如下所示:

Widget build(BuildContext context) => Scaffold(
        backgroundColor: Colors.white,
        floatingActionButton: FloatingActionButton(
          backgroundColor: Colors.white,
          onPressed: () {},
          child: Icon(
            Icons.plus_one,
            color: Colors.black,
          ),
        ),
        body: NestedScrollView(
            headerSliverBuilder:
                (BuildContext context, bool innerBoxIsScrolled) {
              return <Widget>[
                SliverAppBar(
                  pinned: true,
                  expandedHeight: 256.0,
                  flexibleSpace: FlexibleSpaceBar(
                    title: Text('po.'),
                  ),
                ),
              ];
            },
            body: ListView.builder(
              padding: EdgeInsets.all(8.0),
              itemExtent: 20.0,
              itemBuilder: (BuildContext context, int index) {
                return Text('entry $index');
              },
            )));
Widget构建(BuildContext)=>Scaffold(
背景颜色:Colors.white,
浮动操作按钮:浮动操作按钮(
背景颜色:Colors.white,
按下:(){},
子:图标(
图标加上一个,
颜色:颜色,黑色,
),
),
正文:嵌套滚动视图(
班主任:
(BuildContext上下文,boolInnerBoxIsCrowled){
返回[
滑杆(
对,,
扩展高度:256.0,
flexibleSpace:FlexibleSpaceBar(
标题:文本(“po”),
),
),
];
},
正文:ListView.builder(
填充:边缘设置。全部(8.0),
项目范围:20.0,
itemBuilder:(构建上下文,int索引){
返回文本(“条目$index”);
},
)));

以下是您提供的固定要点:

import 'package:flutter/material.dart';

void main() {
  runApp(MaterialApp(
    theme: ThemeData.dark(),
    debugShowCheckedModeBanner: false,
    home: Home(),
  ));
}

class Home extends StatelessWidget {
  final tracks = const [
    {'title': 'BCS Examination', 'subtitle': 'Something'},
    {'title': 'Dhaka University Admission'},
    {'title': 'Khulna University Admission'},
    {'title': 'Chottogram University Admission'},
    {'title': 'Bank Job Exam'},
    {'title': 'Bank Job Exam'}
  ];

  @override
  Widget build(BuildContext context) => Scaffold(
      floatingActionButton: FloatingActionButton(
        backgroundColor: Colors.white,
        onPressed: () {},
        child: Icon(
          Icons.info,
          color: Colors.black,
        ),
      ),
      body: NestedScrollView(
        headerSliverBuilder: (BuildContext context, bool innerBoxIsScrolled) {
          return <Widget>[
            SliverAppBar(
              pinned: true,
              expandedHeight: 256.0,
              flexibleSpace: FlexibleSpaceBar(
                title: Text('po.'),
              ),
            ),
          ];
        },
        body: ListView.builder(
            itemCount: tracks.length,
            itemBuilder: (BuildContext context, int index) {
              var trackTitles = tracks[index];
              return Text(trackTitles['title']);
            }),
      ));
}
导入“包装:颤振/材料.省道”;
void main(){
runApp(材料应用程序)(
主题:ThemeData.dark(),
debugShowCheckedModeBanner:false,
home:home(),
));
}
类Home扩展了无状态小部件{
最终轨道=常数[
{'title':'BCS考试','subtitle':'Something'},
{'title':'达卡大学入学'},
{'title':'Khulna大学入学'},
{'title':'Chottogram大学入学'},
{'title':'银行工作考试'},
{'title':'Bank Job test'}
];
@凌驾
小部件构建(构建上下文)=>Scaffold(
浮动操作按钮:浮动操作按钮(
背景颜色:Colors.white,
按下:(){},
子:图标(
Icons.info,
颜色:颜色,黑色,
),
),
正文:嵌套滚动视图(
headerSliverBuilder:(BuildContext上下文,boolInnerBoxIsCrolled){
返回[
滑杆(
对,,
扩展高度:256.0,
flexibleSpace:FlexibleSpaceBar(
标题:文本(“po”),
),
),
];
},
正文:ListView.builder(
itemCount:tracks.length,
itemBuilder:(构建上下文,int索引){
var trackTitles=轨道[索引];
返回文本(trackTitles['title']);
}),
));
}

在body中,您冷设置了一个SliverList,并将子计数设置为0。 比如:

SliverList(
  delegate: new SliverChildListDelegate(<Widget>[]),
)
SliverList(
委托:新的SliverChildListDelegate([]),
)

通常我会将它与
CustomScrollView一起使用,但您可以试试。

谢谢。我会试试这个。但我有一个问题-如果我使用这样的SilverList,是否会有不必要的处理(即每次迭代一次检查)?只是试图理解这里的逻辑。正如我所知,这不会导致迭代,这就是我们设置小部件列表的原因,这里也有一种进行迭代的方法,但现在不是这样。非常感谢!这非常有效!我遇到了一些语法方面的小问题,但成功地处理了它们。非常感谢!
SliverList(
  delegate: new SliverChildListDelegate(<Widget>[]),
)