2016-08-27 7 views
0

У меня есть представление, я хочу поместить его в позицию (x, y) через WindowManager.LayoutParams.android layoutparam поддержка multi screen

Мой код:

mHeadLayoutParams = new WindowManager.LayoutParams(
       WindowManager.LayoutParams.WRAP_CONTENT, 
       WindowManager.LayoutParams.WRAP_CONTENT, 
       WindowManager.LayoutParams.TYPE_PHONE, 
       WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE | WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH | WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS, 
       PixelFormat.TRANSLUCENT); 
     mHeadLayoutParams.gravity = Gravity.TOP | Gravity.END; 
     mHeadLayoutParams.x = -20; 
     mHeadLayoutParams.y = _screenSize.y * 15/100; 

Но mHeadLayoutParams.x = -20 не то же самое на экране других устройств. Как я могу рассчитать это значение для моего представления, размещенного в той же позиции на экране нескольких устройств?

my image

Извините за мой плохой английский.

ответ

1

Использование Формат экрана и плотность в mHeadLayoutParams.x & mHeadLayoutParams.y. Он автоматически поддерживает многоэкранный режим.

1

Это кажется правильным при использовании: mHeadLayoutParams.x = (INT) - (20 * плотность + 0.5f)

 Смежные вопросы

  • Нет связанных вопросов^_^