Обработка изменения ориентации полей - PullRequest
2 голосов
/ 28 февраля 2012

Я хотел бы адаптировать свое приложение для обработки как портретной, так и альбомной ориентации.Я использую sublayout(), чтобы проверить, изменилась ли ориентация, если да, я удаляю все поля, а затем снова добавляю все поля.Таким образом, все поля расположены правильно для новой ширины дисплея.Мне не нравится это решение, поэтому мне было интересно, есть ли элегантное решение для правильной разметки полей.

Ответы [ 2 ]

2 голосов
/ 28 февраля 2012

Переопределите свои пользовательские поля getPreferedWidth() с помощью масштабирования Display.getWidth и getPreferedHeight() с помощью масштабирования Display.getHeight(), а если вы переопределите paint(Graphics g), используйте getPreferedWidth() и getPreferedHeight() внутри тела метода.

0 голосов
/ 29 февраля 2012

В Blackberry при изменении ориентации экрана вызывается метод sublayout() для текущего экрана. При изменении ориентации не удаляйте никакие поля.Сложно управлять Delete/Add любым полем.Просто управляйте макетом экрана динамически, используя Display.getwidth() & Display.getheight() в качестве справки, и продолжайте изменять размер фонового изображения Screen.

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