ActionBar Ориентация - PullRequest
       1

ActionBar Ориентация

1 голос
/ 12 февраля 2012

В настоящее время у меня есть SurfaceView, который находится в ландшафтном режиме.

В настоящее время я пытаюсь добавить панель действий / строку меню, используя

/*Action Bar */
//this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);   **
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.main_menu, menu);

Есть ли способ выйти изПанель действий в портретном режиме на экране, когда SurfaceView установлен в альбомной ориентации?

Я попытался добавить

this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

, но это делает весь SurfaceView Portrait.

И затем добавлениеэто

this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);

в конце будет inf цикл программы

Спасибо

1 Ответ

1 голос
/ 13 февраля 2012

this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); или LANDSCAPE устанавливает ориентацию действия, поэтому вы не можете использовать его для просмотра поверхности.Если вы хотите, чтобы ActionBar находился в портретном режиме, вам нужно установить действие в Портретном, но найти другой способ установить SurfaceView в Landscape.

Я бы предложил SurfaceView установить вращениеОбъект камеры, таким образом вы получите ориентацию SurfaceView в альбомной ориентации.Попробуйте следующее:

public void surfaceCreated(SurfaceHolder holder) {
    camera = Camera.open();
    camera.setDisplayOrientation(90);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...