2011-03-30 4 views
0

자세한 내용은 Activity 수명주기를 모니터링하므로 거의 모든주기 방법에서 Log.d() 전화를 겁니다.Android - 가로에서 세로로 두 줄의 수명주기

나는 특히 순서보고 있어요 : 나는 [A에서 라운드를 볼 수 있습니다

[A]onSaveInstanceState() - onPause() - onStop() - onDestroy() - onStart() - [B]onRestoreInstanceState() 

Activity Lifecycle

가로에 세로의 Ctrl-F11와 2.2 프로 요 에뮬레이터를 전환 참조 ]을 [B]로 설정하십시오. 나에게 이상한 무엇

다시 세로에 가로로 전환 나는 [A] [B]에에서 라운드를 볼 수 있다는 것입니다.

onSaveInstanceState() - onPause() - onStop() - onDestroy() - onStart() - onRestoreInstanceState() 
onSaveInstanceState() - onPause() - onStop() - onDestroy() - onStart() - onRestoreInstanceState() 

이로 인해 활동 상태를 저장/복원하는 데 많은 문제가 발생합니다.

어떻게 될 수 있습니까? 왜 그래야만하지?

편집 됨 : 2.3.3 진저 브레드 에뮬레이터를 사용하면 시퀀스가 ​​한 번만 실행됩니다. 그러나 2.3.3 에뮬레이터에는 올바르게 회전하지 못하도록하는 알려진 버그가 있습니다!

답변

1

에뮬레이터의 회전이 가속기 회전과 다릅니다. 실제로는 열린 키보드를 시뮬레이트합니다. 두 개의 서로 다른 Lify-cycle 플로우가 발생하는 두 가지 이벤트입니다.

+1

[Android 에뮬레이터 사용] (http://developer.android.com/guide/developing/devices/emulator.html)에 따르면 "이전/다음 레이아웃 방향 전환"은 Ctrl-F11/F12 만 존재합니다. . 바로 연결 로테이션 키가 아닙니까? 어떻게 에뮬레이션 될 수 있습니까? 이 "다른 라이프 사이클"은 무엇입니까? –

0

에뮬레이터에서 실제로 발생하는 문제는 실제 장치에서 확인하고 실제 장치에서 제대로 작동합니다.