2012-03-28 15 views
6

Sto invocando una telecamera utilizzando un intento e facendo clic su un'immagine. Attualmente sono in emulatore e vorrei forzare la fotocamera a fare clic sulle immagini in modalità verticale (è necessario catturare un video di app funzionante, quindi il cambiamento di orientamento apparirebbe male) ma lo schermo della fotocamera appare orizzontale e tutte le altre attività che invoco in onActivityResult().Forza la modalità ritratto nella fotocamera

Camera Screen

Dopo aver cliccato l'immagine del layout Activity esce in modalità orizzontale come questo: enter image description here

mentre tutta la mia precedente attività sono visualizzati correttamente con l'orientamento verticale. Ho provato ad aggiungere

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

all'attività sopra indicato ma senza avail.Though quando mi ha colpito a casa e su di curriculum si visualizza correttamente in ritratto.

Quindi come posso forzare la modalità ritratto ??

+1

'setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);' in onResume nell'attività della videocamera. –

+0

Dai un'occhiata - http://stackoverflow.com/questions/10259299/force-a-camera-to-always-open-in-portrait-mode-in-android –

risposta

2

Nessuna delle soluzioni funziona. Non c'è niente di sbagliato nemmeno nei layout. Ho funzionato eseguendo su una versione superiore (da API10 a API15). Strano !!

-2

Questo lavoro 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); 
+0

Ho provato a utilizzare il tuo codice ma l'orientamento è sempre lo stesso . Qualche altra cosa potrebbe influenzare l'orientamento? – Sankalp

+0

Puoi provare il tuo codice con un dispositivo reale? – Manitoba

+0

No Non ho ancora un dispositivo. :( – Sankalp

-1

scrivere nel tuo manifest.xml in cui è stato definito il tuo questa attività.

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

Questo dovrebbe funzionare. Ti suggerisco di controllare il dispositivo reale.

utilizzare questo codice per la classe di acquisizione dell'immagine in cui inizia l'anteprima.

0

Hai solo bisogno di impostare Id per ognuno dei vostri punti di vista. Non è necessario forzare la modalità ritratto nella fotocamera. In questo modo, si impedisce all'attività di ricreare visualizzazioni e perdita di dati

Problemi correlati