2011-08-22 20 views
6

C'è un modo per impostare una modalità orizzontale sull'intera applicazione, non aggiungendo android:screenOrientation="portrait" a tutte le attività in AndroidManifest?Disabilita la modalità orizzontale per un'intera applicazione

+2

Non è così che si dovrebbe gestire questo genere di cose in Android. A meno che tu non abbia una buona ragione per farlo, ti consiglio di farlo nel manifest. – Codeman

risposta

10

Ecco l'unica cosa che mi viene in mente. Scrivere una classe che estende attività e mettere il seguente in quella classe:

setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); 

Poi, invece di estendere attività nelle altre classi, estendere la nuova classe.

+0

Dove lo metti, nel metodo oncreate? – theJerm

+1

Sì, puoi metterlo nel metodo onCreate della super classe. Non dimenticare di chiamare super.onCreate dalla tua classe estesa. – SBerg413

+0

Grazie per la risposta. – theJerm

0

Si potrebbe provare a mettere quell'attributo nel nodo del manifest. Non so se questo è supportato però. E se non ho paura di metterlo in ognuno di voi sarà il prossimo modo più semplice.

Potresti riuscire ad ottenerlo rendendoti un'Attività personalizzata che estende l'attività e imposta i flag delle finestre come Portrait nel onCreate. Quindi con tutte le altre attività potresti estendere la tua CustomActivity invece di un'attività semplice.

7

Un modo programmatico per fare ciò, che posso pensare, è creare una super classe che estende l'attività e estende tutte le tue lezioni da lì.

Avere l'impostazione di seguito nella classe eccellente in un metodo protetto e chiamano super.xxx() per avviare questo:

setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); 

Nel caso in cui ciò che una specifica attività in modo diverso si può semplicemente ignorare questa .

[non ho ancora provato questo, ma dalla conoscenza di programmazione orientata agli oggetti questo funziona]

+2

a volte quando un'attività viene avviata con questo metodo, può passare rapidamente da orizzontale a verticale per non sconsigliarlo! – Dori

Problemi correlati