2016-03-30 19 views
0

Görünümü çağrı adaptörü üç fragmanları bulunmaktadır. Soldan sağa veya sağdan sola kaydırabilirim ve bu fragmanları görüntüleyebilirim. Ama, onun üçüncü parçasına alır sonra geri kaydırarak kullanıcının engellemek istiyorlar. Kuzu üçüncü fragmanınınnasıl viewpager adaptörden önceki 2 parçalarını kaldırabilirim?

public class PagerAdapter açar kez gibi o önceki iki parçaları görüntülemek mümkün olmamalıdır FragmentPagerAdapter {

FragmentManager mFragmentManager; 
private ArrayList<View> views = new ArrayList<View>(); 

public PagerAdapter(FragmentManager fm) { 

    super(fm); 
    mFragmentManager = fm; 
} 

@Override 
public Fragment getItem(int i) { 

     switch (i) 
     { 
      case 0 : 
       return new FragmentOne(); 

      case 1 : 
       return new FragmentTwo(); 

      case 2 : 
       return new FragmentThree(); 

      default : 
       break; 
     } 

    return null; 
} 

@Override 
public int getCount() { 
    return 3; 
} 

@Override 
public Object instantiateItem(ViewGroup container, int position) { 
    View v = views.get (position); 
    container.addView (v); 
    return v; 
} 

@Override 
public void destroyItem(ViewGroup container, int position, Object object) { 
    container.removeView(views.get(0)); 
} 

}

cevap

0

Evet, gerekir uzanır. Ödeme android geliştiriciler dokümanlar. FragmentPagerAdapter

public void destroyItem (ViewGroup konteyner, int pozisyonu, Nesne nesne)

verilen pozisyon için bir sayfa kaldırın. yalnızca bu da finishUpdate (ViewGroup) döner zaman yapılır sağlamak gerekir, ancak adaptörü, konteynerinden görünümü çıkarılması sorumludur. Ben destrouItem kullanırsanız

+0

yüzden, bu durumda, sadece tek bir pozisyon geçebilir! 2 parçayı nasıl geçebilirim? Ben 3 fragman yüklediğinizde gibi, I parçası 2 ve parça 1'e geri dönmek mümkün olmamalıdır –

İlgili konular