2012-03-14 5 views
7

Я создаю приложение, которое должно знать, находится ли устройство в ландшафтном или портретном режиме. Поэтому я решил, что буду использовать onCreate, я знаю, что это называется при вращении устройства. Но onCreate - это вызов только один раз! Когда я вращаю устройство, ничего не происходит. Я отлаживаю фактическое устройство Motorola Xoom, поэтому я НЕ использую эмулятор. У кого-то была такая проблема?onCreate не вызывается, когда экран вращается - Android

+1

У вас есть тег android: configChanges для активности в манифесте? –

+0

У меня это, это так: android: configChanges = "orientation | keyboardHidden" – Sandra

+0

Тогда ответ @ blackbelt для вас :) –

ответ

30

Проверьте ИНТ манифеста файла вы объявляете

андроида: configChanges = «ориентация»

если вы объявили этот флаг, деятельность не будет разрушен и воссоздан и обратный вызов

onConfigurationChanged() 

будет называться.

+0

Я этого не знал. Хорошо, спасибо. – Sandra

+0

добро пожаловать – Blackbelt

+4

Я не мог принять его раньше, потому что у меня нет репутации, чтобы принять два ответа за короткий промежуток времени. – Sandra

0

Для целевого API> 13 вам нужно объявить как orientation|screenSize для вашего Activity сделать onCreate не называть

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

Если вы только определить orientation или screenSize, onCreate еще называют.
Chekc it here activity-element -> android: configChanges -> "orientation"

Смежные вопросы