Как получить координаты поля на видимом экране при использовании прокрутки? (Blackberry, BB, Java) - PullRequest
0 голосов
/ 21 июля 2011

1) поле, размещенное в менеджере, имеет фиксированную позицию в этом менеджере.

2) когда пользователь прокручивает экран, поле перемещается вдоль видимого экрана (хотя его позиция в менеджере остается неизменной).

Как получить эти видимые экранные координаты поля, когда пользователь прокручивает вид и устанавливает фокус на поле?

P.S. Их можно назвать «абсолютными координатами»

Спасибо!

Ответы [ 2 ]

1 голос
/ 22 июля 2011

найдено решение:

XYRect rc = new XYRect(0,0,1,1); 
_myField.getScreen().getFocusRect(rc);
1 голос
/ 21 июля 2011

Не уверен, что это может вам помочь.Вы смотрели на getFocusRect (XYRect xyrect)?Когда дочернее поле получает foucs, получите экстент области фокусировки менеджера.API говорит, что

getFocusRect

public void getFocusRect (XYRect rect) Получает текущий экстент фокуса.Вызовите этот метод, чтобы получить экстент текущей области фокуса.Обратите внимание, что указанные координаты являются локальными для этого менеджера и учитывают прокрутку (, то есть координаты являются локальными для видимой области менеджера, а не виртуальной области ).

Переопределяет:getFocusRect в классе Параметры поля: rect - Rect, чтобы содержать степень фокуса.

http://www.blackberry.com/developers/docs/5.0.0api/net/rim/device/api/ui/Manager.html#getFocusRect(net.rim.device.api.ui.XYRect)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...