В каком измерении указаны смещения x / y в showAtLocation () в PopupWindow?

Я не уверен, должны ли параметры x и y быть пикселями DensityIndependentPixels.

Я пытался получить эту информацию из документации Android, но ответа нет: В каком измерении указаны смещения x / y в showAtLocation () в PopupWindow?

Покопавшись глубже, у меня остались только вопросы:

Документация WindowManager.LayoutParams содержит дополнительные объяснения по x и y: В каком измерении указаны смещения x / y в showAtLocation () в PopupWindow? но все еще не тот, который я ищу.

0
0
187
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

X / Y в параметрах макета используют пиксели в качестве единицы. Вы можете взглянуть на этот Как показать PopupWindow в специальном месте? для получения дополнительной информации о том, как это сделать.

Дополнительно: вы также можете преобразовать это значение с помощью

float density = context.getResources().getDisplayMetrics().density;
float px = someDpValue * density;
float dp = somePxValue / density;

Дополнительно 2: вы также можете получить ширину / высоту экрана

DisplayMetrics displayMetrics = context.getResources().getDisplayMetrics();    
float dpHeight = displayMetrics.heightPixels / displayMetrics.density;
float dpWidth = displayMetrics.widthPixels / displayMetrics.density;

Другие вопросы по теме