2012-02-04 6 views
1

조각 어댑터 (이 경우 탭 어댑터)를 사용하는 방법을 보여주는 데모 코드가 있습니다. 정확히 instantiate() 메서드가하는 일에 대해 궁금합니다. , 내가 제대로 데모 코드를 읽고 있어요 경우Android Fragments를 사용하는 방법?

http://developer.android.com/reference/android/support/v4/view/ViewPager.html

합니다 (TabsAdapter 클래스 내에서 getItem() 방법을 참조)마다 사용자 : 나는이 페이지에서 다음 데모 코드에서 사용 참조 탭 중 하나를 클릭하면 새 단편이 만들어 집니까? 따라서 조각은 전체 생명주기를 다시 시작합니다 (onAttach() ... onCreate() ... 등)? 이것은 비효율적으로 들린다. 각 탭의 내용을 나타내는 부분은 addTab() 메서드에서 한 번만 인스턴스화 된 다음 getItem()을 호출 할 때 가져올 수있는 컬렉션에 저장해야한다고 생각합니다.

내가 잘못 생각한 경우 제발 나를 수정하십시오. 조각을 관리하는 방법을 더 잘 이해하려고 노력 중입니다.

답변

0

내 돈은 setCurrentItem() 함수가 해당 탭에 표시된 기존 Fragment를 실제로 파괴하지 않는다는 것입니다. 그렇지 않으면 어댑터가 사용 가능한 탭 목록을 가질 이유가별로 없습니다. 하나의 탭에서 다른 탭으로 전환 할 때 setCurrentItem()은 UI를 현재 활성화 된 Fragment에서 분리하거나 onPause() 메서드를 호출 한 다음 새로 선택한 Fragment의 UI를 다시 첨부합니다 (또는 onResume()) 방법).

하지만, 당신이 의심하는 경우 소스 :

는 희망이 도움이, 다윗을 읽을 수

관련 문제