Activity ou Layout

0 respostas
MuriloAngelo

Gente eu estou enfrentando um problema que tem me estressado muito, estou tentando implementar um viewpager e um viewpagerindicator, por hora consegui, mas o que acontece é o seguinte:

Tenho um PageAdapter(customizado por mim), que estende FragmentPagerAdapter(FPA) e outro que estende PagerAdapter(PA).

1 - O que estende o FPA funciona perfeitamente, nesse exemplo eu tenho 3 paginas(view) só que o conteúdo de uma se repete nas demais.
Aparece uma lista de nome, que era para aparecer apenas na primeira pagina, e nas outras duas era para aparecer outras coisas.

Eu não sei onde raios eu coloquei o código :(

2 - O que estende o PA eu consigo fazer aparecer paginas com conteúdos diferentes, só que o "conteúdo" em questão se resume ao xml do layout.
Segue o código:

public class PageAdapter extends PagerAdapter implements PageInfoProvider{
	private View v;
	
    @Override
	public int getCount() {
        return 3;
    }

    @Override
	public Object instantiateItem(final View collection, int position) {
    	 v = new View(collection.getContext());
        LayoutInflater inflater = (LayoutInflater) collection.getContext()
                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);

        //É AQUI QUE É TROCADA AS TELAS, COMO PODEM VER SÓ VAI NO XML MESMO
        switch (position) {
        case 0:
            v = inflater.inflate(R.layout.tela1, null, true);
            break;
        case 1:
            v = inflater.inflate(R.layout.tela2, null, false);
            break;
        case 2:
            v = inflater.inflate(R.layout.tela3, null, false);
            break;
    
        }

       ((ViewPager) collection).addView(v, 0);
        return v;
    }

    @Override
    public void destroyItem(View arg0, int arg1, Object arg2) {
        ((ViewPager) arg0).removeView((View) arg2);

    }

    @Override
    public boolean isViewFromObject(View arg0, Object arg1) {
        return arg0 == ((View) arg1);

    }

    @Override
    public Parcelable saveState() {
        return null;
    }

	@Override
	public String getTitle(int pos) {
		return Bar.titulos[pos];
	}
}

Agradeço qualquer ajuda!

Criado 17 de julho de 2012
Respostas 0
Participantes 1