Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Adicionar fragments em uma ListView

Boa tarde, estou iniciando no android, estou desenvolvendo um app onde tenho uma ListView, e criei um adapter personalizado para preenche-la, até ai tudo bem, o problema é que estou tentando adicionar fragments ao listView, está funcionando porém os fragments sao inseridos todos juntos dentro da primeira linha do listView.

PS: criei o fragment representando um aluno, tive que usar fragment pois meu layout precisa de processamento, (de acordo com os dados do atleta o fragment altera alguns elementos da view).

Pelo que pude notar, o que acontece é que o comando transaction.add é realizado pela activity em que está o listview, pois ela é o contexto, sendo assim, ela pega o primeiro ID que encontrar e adiciona o novo fragment. (como sao varias instancias do mesmo fragment na lista, o id é igual), entao os novos fragments sao inseridos dentro da primeira linha do ListView e as outras linhas ficam vazias.

2 respostas
solução!

Oi Willyan, tudo bem ?

Tive esse problema quando tentei fazer uma coisa parecida, resolvi colocando id no em cada fragment para que possa funcionar :

        FrameLayout frameMapa = (FrameLayout) view.findViewById(R.id.framelayout_parada);
        frameMapa.setId(100 + View.generateViewId());

        Log.i("MAPA FRAGMENT", String.valueOf(frameMapa.getId()));

        FragmentTransaction tx = activity.getSupportFragmentManager().beginTransaction();
        tx.replace(frameMapa.getId(), mapaFragment);
        tx.commit();

Passei por querendo colocar o um mapa em cada item da lista

Deu certo Matheus!!! Muito Obrigado!! estava quebrando a cabeça aqui e nao achei nada na internet, muito obrigado mesmo!