Как сделать SurfaceView всегда горизонтальным? - PullRequest
3 голосов
/ 01 мая 2010

Я использую SurfaceView, чтобы рисовать некоторые вещи, используя canvas. Проблема в том, что я хочу, чтобы по умолчанию все отображалось по горизонтали и сохранялось таким образом, независимо от положения устройства. Я не использую XML-файл макета для отображения SurfaceView; вместо этого у меня просто есть класс, который расширяет SurfaceView, и я делаю setContentView(new Panel(this));, чтобы показать его.

Спасибо за вашу помощь.

1 Ответ

6 голосов
/ 01 мая 2010

Ваша проблема заключается в том, что действие нужно вращать в зависимости от положения устройства или клавиатуры (в зависимости от того, какое это устройство). Если вы хотите, чтобы действие игнорировало ротацию, добавьте android:screenOrientation="portrait" или android:screenOrientation="landscape" в манифест для этого действия. Вы также можете добавить android:configChanges="keyboardHidden|orientation" к действию, чтобы Android не беспокоил уничтожение и воссоздание действия, когда пользователь меняет ориентацию.

См. здесь и здесь для примеров проектов, связанных с этим.

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