Мне интересно, есть ли способ отключить эффект тени / наложения в диалоге?По сути, я могу получить диалоговое окно, похожее на правую часть этого изображения:
Моя лучшая попытка - использовать стексодержащий мой пользовательский диалог, который затем переключается для отображения или нет, но тогда у меня были проблемы с возможностью прокрутки собственного ListView каждого пользовательского диалога без его испорчения другого.Я знаю, что это противоречит рекомендациям по дизайну материалов, но я пытаюсь воспроизвести пользовательский интерфейс на dribble.com.
Спасибо!
Редактировать:
Мне почти удалось добиться этого эффекта, отредактировав метод showGeneralDialog
, но тень все еще остается:
await showGeneralDialog(
context: context,
pageBuilder: (BuildContext buildContext,
Animation<double> animation,
Animation<double> secondaryAnimation) {
return SafeArea(
child: Builder(builder: (context) {
return AlertDialog(
content: Container(
color: Colors.white,
width: 150.0,
height: 150.0,
child: Center(child: Text("Testing"))));
}),
);
},
barrierDismissible: true,
barrierLabel: MaterialLocalizations.of(context)
.modalBarrierDismissLabel,
barrierColor: null,
transitionDuration:
const Duration(milliseconds: 150));
Редактировать 2: Просто изображение, иллюстрирующее изменение в приведенном выше коде, показывающее, что я до сих пор был в состоянии отключить наложение темноты, но в диалоге все еще есть возвышение, от которого я не могу избавиться:
Редактировать 3: Я думаю, что если я смогу изменить AlertDialog
в showGeneralDialog
Builder
, тогда я смогузаставить его работать, но у меня возникают проблемы при вставке чего-то, что Material
, но не занимает весь экран.