본문 바로가기

Android/Activity

안드로이드/Android 화면 전환시 Activity 재생성 문제 해결

안드로이드/Android 화면 전환시 Activity 재생성 문제 해결


안녕하세요.  요즘 너무 바쁘다 보니 오랜만에 포스팅을 하게 되는군요. 오늘 알아볼 내용은.! 다름이 아니라 화면 전환시 Activity가 재생성 되는 문제 입니다. 퐝당하죠? 그것도 onCreate() 부터 다시 타게 되니 말입니다.


onCreate()에서 서버통신등의 작업을 하고 있던 분들은... 대략난감.. 그외에 하드한 문제들이 발생하게 되는데요. 간단하게 XML 속성으로 해결 할 수 있습니다.


AndroidManifest.xml

<activity
       android:name=".activity.CLoadingActivity"
       android:label="@string/app_name"
      android:configChanges="orientation|keyboard"
       >


바로 AndroidManifest.xml 에 파일안에 <activity></activity> 속성안에 "orientation|keyboard" 이놈을 추가해주시면 됩니다. "orientation" 이라는 속성은 화면이 전환해도 Activity 생명 주기를 타지 않고, Activity 안에 있는 메서드인, "onConfigurationChanged()" 라는 메서드를 실행 하게 합니다. 


"onConfigurationChanged()" 메서드는 단말의 화면(가로, 세로 모드등)을 전환할 경우에 호출되는 메서드인데,  "orientation" 을 주게되면, 사용 할 수 있게 되는 것이지요. 그러므로 "onConfigurationChanged()" 오버라이드해서 사용하시면 화면만 전환되는 Activity를 볼 수 있으며, 화면 전환시 처리도 할 수 있게 됩니다.