Flutter新手求助:Center组件报‘Too many positional arguments’错误的原因
错误原因解析
这个错误的核心逻辑很简单:你给Center组件传了它不接受的位置参数。
Flutter官方的Center组件构造函数里,所有参数都是命名参数(必须用参数名: 值的格式传递,比如child: xxx),它根本不支持直接传位置参数(也就是不能直接写Center(ListView(...))这种形式)。
从你贴的代码来看写法是正确的,但出现这个错误大概率是以下某一种情况:
- 实际写代码时不小心省略了
child:,直接把ListView作为位置参数传给Center,触发参数类型不匹配的报错。 - 代码有拼写/缩进错误,比如把
child:写成了chid:之类的,导致编译器把ListView识别成了位置参数。 - 你导入了自定义的
Center组件(而非flutter/material.dart里的官方组件),这个自定义组件的构造函数不允许传递位置参数。
内容的提问来源于stack exchange,提问作者Gurpreet kaur
相关产品推荐
相关产品推荐

