2012-03-14 24 views
7

Sto costruendo un'app che deve sapere se il dispositivo è in modalità orizzontale o verticale. Così ho pensato, userò onCreate, so che è chiamato sulla rotazione del dispositivo. Ma onCreate è chiamato una sola volta !! Quando ruoto il dispositivo, non succede nulla. Sto eseguendo il debug su un dispositivo reale, Motorola Xoom, quindi NON sto usando l'emulatore. Qualcuno ha avuto questo tipo di problema?onCreate non chiamato quando lo schermo ruota - Android

+1

Hai il tag 'android: configChanges' per l'attività nel tuo manifest? –

+0

Ce l'ho, è così: android: configChanges = "orientation | keyboardHidden" – Sandra

+0

Quindi la risposta di @ blackbelt è per voi :) –

risposta

30

Controllare se int il file manifesto si dichiara

android: configChanges = "orientamento"

se dichiarato questo flag, l'attività non verrà distrutto e ricreato e la richiamata

onConfigurationChanged() 

verrà chiamato.

+0

Non lo sapevo. Ok grazie. – Sandra

+0

prego – Blackbelt

+4

Non ho potuto accettarlo prima, perché non ho la reputazione di accettare due risposte in un breve periodo di tempo. – Sandra

0

Per API di destinazione> 13 è necessario dichiarare sia orientation|screenSize per il vostro Activity per rendere onCreate non chiama

<activity 
    ... 
    android:configChanges="orientation|screenSize" 
    /> 

Se si definisce solo orientation o screenSize, onCreate ancora chiamare.
Chekc qui activity-element -> android: configChanges -> "orientation"

Problemi correlati