我要创建一个深色背景的CupertinoAlertDialog。
并且我尝试使用主题小部件来解决此问题,但是它不起作用。
此处有一些代码:
showDialog() {
showCupertinoDialog(
context: context,
builder: (context) {
return Theme(
data: ThemeData(
dialogBackgroundColor: Colors.black,
dialogTheme: DialogTheme(backgroundColor: Colors.black)),
child: CupertinoAlertDialog(
title: Text('Title'),
content: Text('Some message here'),
actions: <Widget>[
FlatButton(
onPressed: () {
Navigator.of(context).pop();
},
child: Text('OK'),
),
],
),
);
},
);
}
答案 0 :(得分:3)
使用Colors.black
代替使用ThemeData.dark()
showDialog() {
showCupertinoDialog(
context: context,
builder: (context) {
return Theme(
data: ThemeData.dark(),
child: CupertinoAlertDialog(
title: Text('Title'),
content: Text('Some message here'),
actions: <Widget>[
FlatButton(
onPressed: () {
Navigator.of(context).pop();
},
child: Text('OK'),
),
],
),
);
},
);
}
答案 1 :(得分:1)
背景色是硬编码的:
但是您可以创建自己的小部件,而不是默认的小部件。
答案 2 :(得分:0)
也许你可以用adaptive_Dialog代替它 https://pub.dev/packages/adaptive_dialog