2012-06-14 3 views
6

기본적으로 각 뷰 위치에 대해 별도의 XML 레이아웃으로 ViewPager 내의 페이지를 채 웁니다. 나는 현재PagerAdapter의 각 뷰에 대해 instantiateItem을 새롭게 추가하십시오.

@Override 
    public Object instantiateItem(View container, int position) { 

     LayoutInflater inflater = (LayoutInflater) mContext.getSystemService(mContext.LAYOUT_INFLATER_SERVICE); 

     if(position == 0){ 
     view = inflater.inflate(R.layout.main, null); 
     ((ViewPager) container).addView(view, 0); 
     } 
     if(position == 1){ 
      view = inflater.inflate(R.layout.main_second, null); 
      ((ViewPager) container).addView(view, 0); 
     } 
     if(position == 2){ 
      view = inflater.inflate(R.layout.main_third, null); 
      ((ViewPager) container).addView(view, 0); 
     } 

     return view; 
} 

전망은 처음에 제대로 표시하여이 일을 해요,하지만 난이 ViewPager 슬쩍 때, 레이아웃 파괴/숨겨져 있습니다. 왜 이런거야? 내가 잘못하고있는거야? 제발 도와주세요.

감사합니다. 사랑해. 웨슬리

+0

해결책을 얻을 수 있습니까? – CoronaPintu

+0

또한 도움이 될 수 있습니다 http://stackoverflow.com/a/37916222/3496570 – Nepster

답변

14

this link을 확인하여 함께 사용하는 방법에 대한 좋은 자습서를 확인하십시오. 기본적으로 생각해 보면 새로 부 풀린 뷰를 ViewPager 컬렉션에 추가해야한다는 것입니다.

View view = inflater.inflate(resId, null); 
((ViewPager) collection).addView(view, 0); 
+0

어디서 더 구현할 수 있습니까? – CoronaPintu

+0

@Pintu, switch 문 다음에이 코드를 instantiateItem 메소드에 넣으십시오. 내 게시물의 자습서 링크의 4 단계를 참조하십시오. – rundavidrun

관련 문제