Qual é a diferença entre FragmentPagerAdapter
e FragmentStatePagerAdapter
?
Sobre FragmentPagerAdapter
o guia do Google diz:
Esta versão do pager é melhor para uso quando há um punhado de fragmentos estáticos tipicamente mais para serem paginados, como um conjunto de guias. O fragmento de cada página visitada pelo usuário será mantido na memória, embora sua hierarquia de exibição possa ser destruída quando não estiver visível. Isso pode resultar no uso de uma quantidade significativa de memória, pois as instâncias de fragmento podem manter uma quantidade arbitrária de estado. Para conjuntos maiores de páginas, considere
FragmentStatePagerAdapter
.
E sobre FragmentStatePagerAdapter
:
Essa versão do pager é mais útil quando há um grande número de páginas, funcionando mais como uma exibição de lista. Quando as páginas não estão visíveis para o usuário, seu fragmento inteiro pode ser destruído, mantendo apenas o estado salvo desse fragmento. Isso permite que o pager mantenha muito menos memória associada a cada página visitada em comparação com
FragmentPagerAdapter
o custo de potencialmente mais sobrecarga ao alternar entre as páginas.
Então, eu tenho apenas 3 fragmentos. Mas todos eles são módulos separados com uma grande quantidade de dados.
Fragment1
lida com alguns dados (nos quais os usuários inserem) e os passa por atividade Fragment2
, o que é simples ListFragment
. Fragment3
também é um ListFragment
.
Então, minhas perguntas são : Qual adaptador devo usar? FragmentPagerAdapter
ou FragmentStatePagerAdapter
?
FragmentPagerAdapter
e FragmentStatePagerAdapter
mas o que é FragmentStateAdapter
?