2013-02-08 3 views
4

한 페이지에서 View Pager를 사용하는 Project를 개발 중입니다. 두 페이지 만 있습니다.fragmentage에서 viewPager의 currentItem을 설정하십시오.

처음에는 위젯이있는 간단한 양식이 있습니다. 두 번째 페이지에는 제품 이름 및 수량 목록보기가 있습니다.

첫 번째 페이지 (Frgament)에있는 회 전자의 특정 옵션을 선택한 후 첫 페이지에서 두 번째 페이지로 변경할 수 있습니까?

ViewPager.setCurrentItem(int index); 

는 특정 페이지로 가능한 변화를 만들어

는 것은 내가 내 활동 선언이 viewpager 개체를 참조하는 방법을 몰라 :

나는이 방법이 비슷한 질문을 읽고 내 조각에서 호스트.

답변

18

비록 시나리오를 완전히 이해하지 못합니다. 내가 이해 한 바에 따르면,이 경우에 작동 할 수있는 해킹입니다. 활동에

:

조각에서
public ViewPager getViewPager() { 
    if (null == mViewPager) { 
     mViewPager = (ViewPager) findViewById(R.id.view_pager_id) 
    } 
    return mViewPager; 
} 

:

((YourActivitName)getActivity()).getViewPager().setCurrentItem(index); 
+7

더 나은 쓰기 공공 무효 setCurrentPagerItem (INT 항목) { pager.setCurrentItem (항목); }의 활동. –

+0

정말 고마워요. @DoctororDrive가 제공하는 솔루션도 정상적으로 작동합니다. – Henry1988

+2

내부 활동의 구현에 속한 ViewPager를 직접 노출시키지 않으므로 @DoctororDrive가 제공하는 솔루션이 더 정확합니다 (따옴표가 있음). 물론 Java를 사용하면 둘 중 하나를 수행 할 수 있으며 둘 중 한 가지 방법을 지원하는 사람을 얻을 수 있습니다. –