Как нарисовать холст с учетом ориентации телефона (пейзаж, портрет)? - PullRequest
2 голосов
/ 11 октября 2010

Нет проблем с портретным режимом, но когда я пробую свое приложение в ландшафтном режиме, оно не выглядит так, как должно. на правильном пути, как я должен это сделать? Должен ли я использовать оператор if в начале функции onDraw () и дважды написать один и тот же код (один для x, y, а другой для y, x)?

Ответы [ 2 ]

1 голос
/ 12 октября 2010

Похоже, вы указываете абсолютную ширину и высоту для вызовов при рисовании. Например, если вы сохранили myWidth = 480 и myHeight = 800 на ранних этапах и выполняете все свои рисунки таким образом, то при повороте устройства эти ширина и высота больше не применяются.

Я думаю, что решение для вас здесь состоит в том, чтобы прослушать обратные вызовы с измененным размером и соответственно изменить ваше представление о ширине и высоте. Если вы рисуете непосредственно в виде, вы хотите переопределить View.onSizeChanged ().

0 голосов
/ 11 октября 2010

Вам не нужно менять местами координаты X и Y на чертеже.По умолчанию, когда приложения вращаются, системы координат тоже.

...