2011-07-06 6 views
0

나는 현재 일부 성능 문제로 고통 받고있는 iOS 용으로 개발중인 응용 프로그램이 있습니다. 앱은 5 개의보기가있는 탐색 컨트롤러를 통해 사용자 입력을받습니다. 마지막보기는 페이징 효과가있는 UIScrollView가 포함 된보기를 생성합니다. 이 UIScrollView의 각 페이지에는 16 개의 단추가 격자 모양으로 배열되어 있으며 각 단추에는 이미지가로드됩니다.UIScrollView 페이징 느린 애니메이션

불행히도 UIScrollView에서 새 페이지로 스크롤하면 앱이 매끄러운 애니메이션이 아닌 엉망이 된 애니메이션에서 우연히 발견됩니다.

누군가 페이징 UIScrollView 효과의 성능을 향상시키는 방법에 대한 제안 사항이 있는지 궁금합니다.

감사합니다.

+0

scrollView.decelerationRate 속성을 설정합니다. – Shantanu

답변

0

두 번째로 해당보기로 이동하면 더 부드럽게 돌아갈 수 있습니까?

그렇다면 아마도 시간이 걸리는 이미지가로드되었을 것입니다. 앱 위젯에서 [UIImage imageNames : ...]를 사용하여 앱을 처음로드 할 때 버튼 이미지를 미리로드하여 문제를 해결할 수 있습니다. 그렇게하면 뷰가 표시 될 때 이미 렌더링되고 캐시 될 수 있습니다.

두 번째로 빠르지 않은 경우보기의 실제 렌더링이 너무 느립니다. 뷰 자체를 미리로드하여 수정할 수 있습니다. 배열의 scrollview의 하위 뷰에 대한 참조를 저장하는 경우 해당 뷰를 미리 append에 미리로드하고 스크롤 뷰가 표시 될 때마다 표시 할 수 있도록 메모리에 보관할 수 있습니다.

나는 그 뷰가 너무 많은 메모리 (아마 몇 MB, 최대)를 사용하지 않을까 의심 스럽지만, 걱정이된다면 배열을 플러시하고 다시 생성하는 메모리 경고 핸들러를 추가하기 만하면된다. 다음 번엔 필요합니다.

관련 문제