2012-06-14 7 views
6

Quindi in pratica voglio popolare le pagine all'interno di ViewPager con layout XML separati per ogni posizione di visualizzazione. Attualmente sto facendo questo daGonfia il nuovo layout xml per ogni vista - instantiateItem in PagerAdapter

@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; 
} 

I punti di vista vengono visualizzati correttamente in un primo momento, ma quando ho strisciare la ViewPager, il layout è nascosta/distrutto. Perchè è questo? Lo sto facendo nel modo sbagliato? per favore aiutami e correggimi

Grazie. Amore. Wesley

+0

puoi ottenere una soluzione? – CoronaPintu

+0

Può anche aiutare http://stackoverflow.com/a/37916222/3496570 – Nepster

risposta

14

Dai un'occhiata a this link per un buon tutorial su come mettere tutto insieme. Fondamentalmente l'idea è che devi aggiungere la vista appena gonfiata alla collezione ViewPager:

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

dove implementare questo è possibile spiegare di più? – CoronaPintu

+0

@Pintu, inserire questo codice nel metodo instantiateItem dopo l'istruzione switch. Vedi il punto 4 del link tutorial nel mio post. – rundavidrun

Problemi correlati