Я хотел показать AlertDialog, который предлагает пользователю выбрать цвет. Я сделал это, однако между ColorPicker и кнопками действий много пустого места:

Как удалить пустое пространство и сделать диалог настолько большим, насколько он должен быть? Я попытался использовать Dialog
вместо AlertDialog
, а также обернуть мой контент внутри Column
с mainAxisSize
, установленным на MainAxisSize.min
, но ни один из них не работал. Любопытно то, что значение, переданное в contentPadding
, похоже, не влияет на пользовательский интерфейс. Я пробовал разные значения, и он остался прежним.
Это код:
void _showColorPickerDialog() {
showDialog(
context: context,
builder: (BuildContext context) {
return AlertDialog(
contentPadding: const EdgeInsets.all(6.0),
title: Text('Pick a color'),
content: MaterialColorPicker(),
actions: [
FlatButton(
child: Text('CANCEL', style: TextStyle(color: Colors.blue)),
onPressed: Navigator.of(context).pop),
FlatButton(
child: Text('OK', style: TextStyle(color: Colors.blue)),
onPressed: Navigator.of(context).pop),
],
);
});
}
Автор пакета (Material ColorPicker) предоставляет некоторый код, показывающий, как это сделать, что довольно похож на мой, но имеет ту же проблему. Возможно, моя версия Flutter не такая, как у него. В любом случае, вы знаете какой-нибудь хороший подход к решению этой проблемы? Заранее спасибо.