Когда я включаю один из SystemOverlay.top или SystemOverlay.bottom большую часть времени, отображается строка состояния, но проблема в SystemNavigationBar (три кнопки внизу).Он не показывается, но когда я провожу снизу вверх, он появляется и больше никогда не уходит.Кроме того, цвет полос BottomNavigation меняется с черного (по умолчанию для системы) и настраиваемого пользователем (с SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle.dark.copyWith(systemNavigationBarColor: Colors.red
));
).
. А также цвет самих кнопок переключается с непрозрачности .5 на полную 1.0.непрозрачности.
И проблема становится намного хуже, когда оборачиваем любой виджет с помощью детектора жестов (точно не знаю, почему, но когда я выполняю функцию onTap для этих виджетов, запускается случайным образом) и с использованием TextField (этотэто более понятно, потому что когда вы нажимаете на него, он вызывает появление SystemNavigationBar).А также при использовании ListView или PageView без снятия их высоты с высоты панели навигации.
Чтобы воспроизвести это странное поведение, вы можете просто поместить этот код в функцию построения виджета с состоянием:
@override
Widget build(BuildContext context) {
SystemChrome.setEnabledSystemUIOverlays([SystemUiOverlay.top]);
SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle.dark.copyWith(systemNavigationBarColor: Colors.red
));
return Container(
color: Colors.red,
child: Center(
child: Text("TEST"),
),
);
}
Как я могу решить эту проблему?