2013년 2월 17일 일요일

android - improving layout performance

레이아웃 성능 최적화

1. Hierarchy Viewer를 사용해 Layout를 검사
 - 사용된 뷰 수와 Measure, Layout, Draw 처리 시간을 이용해 성능 저하를 유발하는 뷰를 찾을 수 있다.

2. Layout 재사용
 1) 재사용 할 수 있는 공통 뷰를 Layout을 작성
 2) <include/> 태그를 이용하여 뷰에 사용
 3) 재사용 할 수 있는 뷰의 Layout 작성시 <merge/> 태그를 활용하면 불필요한 View
Group 사용을 줄여준다.

3. 필요한 경우에 뷰를 로딩
 - ViewStub을 이용하면 크기도 없고 보여지지 않는 뷰를 사용자가 원하는 시점에 setVisiblity()나 inflate() 메소드의 호출로 원하는 뷰를 생성하여 표시할 수 있다.

4. ListView의 스크롤 부드럽게 만들기
 - 스크롤을 부드럽게 하려면 Main Thread(UI Thread)를 idle 상태로 유지 해야함.

 1) Background Thread를 사용해라
  - AsyncTask 등을 사용하여 디스크 I/O, 네트워크 I/O, DB I/O 등의 작업 수행은 Background Thread를 사용해야 한다.
 2) getView에서 findViewById() 를 사용하여 View를 얻을때 ViewHolder를 사용하여 한번 find된 View를 다시 find하지 않게 하라.

댓글 없음:

댓글 쓰기