【发布时间】:2022-10-05 20:50:40
【问题描述】:
刚才我升级到 Flutter 3.3.0,然后出现这个错误:
没有为类型 \'_PickerFieldState\' 定义方法 \'FlatButton\'。 (文档)尝试将名称更正为现有方法的名称,或定义一个名为 \'FlatButton\' 的方法。
标签: flutter dart flutter-layout flutter-upgrade
刚才我升级到 Flutter 3.3.0,然后出现这个错误:
没有为类型 \'_PickerFieldState\' 定义方法 \'FlatButton\'。 (文档)尝试将名称更正为现有方法的名称,或定义一个名为 \'FlatButton\' 的方法。
标签: flutter dart flutter-layout flutter-upgrade
您可以查看breaking-changes/buttons#context
我们需要使用 TextButton 而不是 FlatButton
要拥有类似的用户界面,我们可以使用这种风格
final ButtonStyle flatButtonStyle = TextButton.styleFrom(
primary: Colors.black87,
minimumSize: Size(88, 36),
padding: EdgeInsets.symmetric(horizontal: 16.0),
shape: const RoundedRectangleBorder(
borderRadius: BorderRadius.all(Radius.circular(2.0)),
),
);
TextButton(
style: flatButtonStyle,
onPressed: () { },
child: Text('Looks like a FlatButton'),
)
参考并查找有关restoring the original button visuals 的更多信息
【讨论】:
FlatButton 已弃用,请改用 TextButton。像这样:
TextButton(onPressed: (){}, child: Text('Tap')),
【讨论】: