Странная белая полоса под клавиатурой flutter

#flutter

Вопрос:

После обновления flutter я заметил, что у меня под клавиатурой странного вида белая полоса.

Я понятия не имею, как это произошло и как от этого избавиться.

Мое приложение работает в полноэкранном режиме, что может иметь к этому какое-то отношение.

Видишь здесь белую полосу

Ответ №1:

Из SystemChrome.setEnabledSystemUIMode документации:

Настройки здесь могут быть переопределены платформой, когда системный пользовательский интерфейс становится необходимым для функциональности.

Например, на Android, когда клавиатура станет видимой, она включит наложение пользовательского интерфейса панели навигации и строки состояния. Когда клавиатура закрыта, Android не восстановит предыдущие настройки видимости пользовательского интерфейса, и видимость пользовательского интерфейса не может быть изменена до 1 секунды после закрытия клавиатуры, чтобы предотвратить блокировку вредоносных программ пользователями кнопок навигации.

Вы можете навести курсор в своем коде и прочитать больше, но, по-видимому, это связано с проблемами безопасности, связанными с блокировкой вредоносных программ.

Что касается того, почему он кажется белым, я думаю, что это ошибка. Мне удалось заставить его работать только при manual таком использовании и назначении либо bottom или top :

 SystemChrome.setEnabledSystemUIMode(SystemUiMode.manual, overlays: [SystemUiOverlay.bottom]);
 

Это, например, при использовании нижней части, сохранит верхнюю строку состояния скрытой, но покажет клавиши навигации. Если клавиатура необходима, она отображается нормально, а не как белая проблема. Если вам не нужна строка состояния, но вас устраивает нижняя часть, используйте SystemUiOverlay.bottom «возможно», пока она не будет исправлена.

Обратите внимание на скрытую строку состояния вверху.

введите описание изображения здесь введите описание изображения здесь

Комментарии:

1. Спасибо! Я понимаю, почему он хочет это сделать, но почему он белый?

2. Пожалуйста, я отредактировал свой ответ, в определенной степени он сработал.