Силовой портретный режим в камере

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

Camera Screen

После щелчка на картинке макет активности выходит в ландшафтном режиме следующим образом: enter image description here

пока все мои предыдущие действия отображались правильно в портретной ориентации. Я попробовал добавить

android:screenOrientation="portrait" 
android:configChanges="orientation|keyboardHidden"

для показанной выше операции, но безрезультатно. Хотя, когда я ударяю домой и после возобновления, он отображается правильно в портрете.

Итак, как мне настроить портретный режим?

Ответы

Ответ 1

Ни одно из решений не работает. В макетах нет ничего плохого. Я получил его для работы, работая на более высокой версии (API10 до API15). Weird!!

Ответ 3

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

Ответ 4

Напишите в вашем файле manifest.xml, где вы определили свою активность.

<activity android:name="your_activity name" android:screenOrientation="portrait" />

Это должно сработать. Я предлагаю вам проверить реальное устройство.

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

Ответ 5

Эта работа shoudl:

 Intent i = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
 i.putExtra(MediaStore.EXTRA_SCREEN_ORIENTATION, ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); 
 i.putExtra(MediaStore.EXTRA_OUTPUT, fileUri);
 startActivityForResult(i, CAMERA_CODE);