Вы можете сделать одну простую вещь => Отметить свойство top от SafeArea
до false , чтобы верхняя область телефона приняла цвет фона AppBar
, а нижняя SafeArea - цвет родителя container
. В идеале, я хотел бы предложить, если вы ограничиваете свой scaffold
внутри SafeArea
, тогда его верхний SafeArea
цвет должен совпадать с AppBar
фоновым цветом, а нижний цвет SafeArea соответствует вашему требованию (цвет родительского контейнера).
Я изменил ваш код двумя разными цветами:
Widget build(BuildContext context) {
return Container(
color: Colors.blue,
child: SafeArea(
left: true,
top: false,
right: true,
bottom: true,
child: Scaffold(
resizeToAvoidBottomInset: false,
appBar: AppBar(
backgroundColor: Colors.orange,
title: Text(widget.title),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Text(
'You have pushed the button this many times:',
),
Text(
'$_counter',
style: Theme.of(context).textTheme.display1,
),
],
),
),
floatingActionButton: FloatingActionButton(
onPressed: _incrementCounter,
tooltip: 'Increment',
child: Icon(Icons.add),
),
),
),
);
}