У меня есть несколько всплывающих окон в моем приложении, оно полноэкранное и следующий код:
content.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT));
content.measure(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
int screenWidth = windowManager.getDefaultDisplay().getWidth();
int screenHeight = windowManager.getDefaultDisplay().getHeight();
int x = screenWidth / 2 - content.getMeasuredWidth() / 2;
int y = screenHeight / 2 - content.getMeasuredHeight() / 2;
window.showAtLocation(content, Gravity.NO_GRAVITY, x, y);
Сделать окно показанным по центру.
Но у меня есть другое действие, которое не является полноэкранным, когдавсплывающее окно открывается справа вниз от того места, где оно должно быть.
Пытаясь выяснить, почему это происходит, я думаю, что showAtLocation показывает, что это относительно текущей активности, но мне нужно показать ее относительно отображения.
Как я могу это сделать?Или есть более простой способ, чтобы всплывающее окно было только по центру?