제목은 ‘Speed up your Android UI’ 로 android activity에서 화면 갱신 속도를 높일 수 있는 방법을 설명하고 있습니다.
http://www.curious-creature.org/2009/03/04/speed-up-your-android-ui/
결론은
1. Activity가 전체 화면을 그리는 UI라면 (예: 화면 전체에 그림을 출력하는 경우, Gallery에서 사진을 전체화면으로 보는 경우) background를 그리지 않게 하여 background가 그려지는 시간을 줄일 수 있다.:
Android에서 View가 그려지는 놈은 DecorView인데 DecorView는 theme에서 background로 설정된 drawable 객체로 한번 지워(그려)집니다. 그런데 Activity가 전체화면 UI라면 background로 전체 화면을 지운 후 다시 전체화면을 UI에 맞게 다시 그릴 것이기 때문에 background로 지우는 작업이 필요 없다. 이 background로 지우는 작업이 T-Mobile G1에서는 3 millilseconds정도 된다고 합니다.
Windows Mobile에서 WM_ERASEBACKGROUND 메시지를 App에서 처리하여 윈도우화면이 erase되는 시간을 줄여 껌뻑임을 막았었는데 개념상 동일한 내용입니다.
2. 자신의 배경을 가진 Activity의 시작시간(perceived startup performance of some of your activities.) 을 줄이려면 activity가 사용하는 배경 이미지를 theme의 background로 적용하라.
activity가 실행 될 때 기본 동작은 default theme의 background로 그린 후 activity의 background로 다시 그리는 것입니다. 따라서 theme의 background에 activity에서 사용할 이미지를 지정하여 전체 화면 갱신을 한번만 하자.
댓글 없음:
댓글 쓰기