2012-05-24 4 views
1

2.2에서 target을 사용하여 Android 애플리케이션을 만듭니다. android.support-v4.jar에 제공된 ViewPager를 사용하고 싶습니다.Android ViewPager 성능 향상

콘텐츠를 표시하기 위해 Fragment와 함께 FragmentPagerAdapter를 사용하고 있습니다. 각 조각에는 WebView가 포함되어 일부 HTML 데이터가 표시됩니다.

WebView를 위아래로 스크롤하는 것은 효과적이지만 ViewPager의 페이지를 스 와이프하는 것은 WebView를 스크롤하는 것처럼 매우 매끄럽지 않고 매끄럽게 동작하지 않습니다.

ViewPager의 스크롤 성능을 향상시킬 수있는 방법이 있습니까? 예를 들어 BaseAdapter의 ConvertView와 같은 기능이 있습니까?

나는 백그라운드 스레드에서 URL을로드 할 수 있다고 추측하고 있지만 모범 사례는 아닌 것으로 들었습니다.

의견을 보내 주시면 감사하겠습니다.

답변

14

나는 ,. 스크롤하는 동안 당신이

viewPager.setOffscreenPageLimit(items.size()); 

메모리에 미리로드 된 모든 항목을 유지하기 위해 사용하고 "동결/랙이"성능을 피할 수 실현

+0

그냥 질문, 어쩌면 바보 같은 질문 : 모든보기 페이지 항목을 미리로드하는 것이 너무 무거울 까? –

+0

OutOfMemory 또는 이와 유사한 오류가 발생하지 않았습니까? –

+1

당신은 할 수있는 아이템의 수와 각보기가 얼마나 무거운 UI인지에 따라 다릅니다. 내가 이런 일이 일어나지 않을 것을 확인하기 위해 한 것은 아이템의 크기를 훨씬 더 높게 하드 코딩하여 내 응용 프로그램에 현실적인 것입니다. – Slickelito

1

Fragments을 재사용하려면 ViewPager에서 기존 조각을 재사용하고 UI에 새 데이터를 채우거나 새로 고치는 방법을 제공해야합니다.