Когда мы показываем AlertDialog в Android, он отображается в центре экрана. Есть ли способ поменять позицию?
android
android-layout
android-ui
гипсикодер
источник
источник
wmlp.x = 100; //x position wmlp.y = 100;
вам просто набор гравитацияwmlp.gravity = Gravity.TOP | Gravity.LEFT;
достаточноЕсли вы, например, хотите переместить диалоговое окно прогресса немного ниже и не устанавливать точное положение пикселя, этого достаточно:
источник
Чтобы настройка имела информационный эффект, я добавил следующий код
dialog.getWindow().setAttributes(wmlp);
после изменения значения wmlp в ответе gypsicoder, или настройка wmlp не вступит в силу моим тестом.
источник
Эти ответы будут перемещать положение AlertDialog, однако положение отображаемого диалогового окна также будет включать отступы вокруг диалогового окна.
Если вы хотите избавиться от этого заполнения (например, чтобы разместить диалоговое окно на одном уровне с нижней частью экрана), вам также необходимо переопределить стиль AlertDialog по умолчанию в файле styles.xml, чтобы установить для windowBackground значение null, например :
А также установка Window.LayoutParameters, как описано в принятом ответе.
Особый привет @David Caunt, чей ответ на: remove border, padding from Dialog завершил эту картину.
источник