对话框的默认圆角
摘要
#Dialog
、SimpleDialog
、AlertDialog
和 showTimePicker
的实例现在具有 RoundedRectangleBorder
的默认形状,其 BorderRadius
为 4.0 像素。这与 Material Design 的当前规范相匹配。在此更改之前,Dialog.shape
的 BorderRadius
的默认行为为 2.0 像素。
上下文
#Dialog
及其关联子类(SimpleDialog
、AlertDialog
和showTimePicker
)的外观略有变化,因为边框半径变大了。如果您拥有使用先前渲染的Dialog
(边框半径为2.0像素)的黄金文件图像,您的部件测试将失败。您可以更新这些黄金文件图像以反映新的渲染效果,或者您可以更新代码以保持原始行为。
showDatePicker
对话框已匹配此规范,不受此更改的影响。
迁移指南
#如果您希望保持旧形状,可以使用Dialog
的shape属性指定原始的2像素半径。
将Dialog形状设置为原始半径
Dart
import 'package:flutter/material.dart';
void main() => runApp(Foo());
class Foo extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
floatingActionButton: FloatingActionButton(onPressed: () {
showDialog(
context: context,
builder: (BuildContext context) {
return AlertDialog(
content: Text('Alert!'),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.all(Radius.circular(2))),
);
},
);
}),
),
);
}
}
如果您更喜欢新的行为并且黄金文件测试失败,可以使用以下命令更新主黄金文件
flutter test --update-goldens
时间线
#包含版本:1.20.0-0.0.pre
稳定版发布:1.20
参考文献
#API文档
相关PR
除非另有说明,否则本网站上的文档反映了 Flutter 的最新稳定版本。页面上次更新于 2024-04-04。 查看源代码 或 报告问题.