Android - WindowManager - показывать плавающее окно в абсолютной нижней части экрана? - PullRequest
0 голосов
/ 28 января 2019

Я пытаюсь показать плавающее окно под панелью навигации.Я могу сделать это, но если я отображаю окно в (0,0), оно показывается внизу слева, но над панелью навигации.Если я использую отрицательную координату y, она становится ниже - но я не знаю, насколько она должна быть ниже.

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

Кроме того - если нет навигационной панели, мне все равно нужно показывать окно внизу экрана.

Я могу придумать два способа решения моей проблемы, но не могу понять, как это сделать:

  1. Найти надежный способ получить высоту панели навигации
  2. Найдите флаг, который заставляет (0,0) нацеливаться на левый нижний пиксель

Вот мои LayoutParams флаги:

WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE
  or WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE
  or WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN
  or WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS
...