Tecnologia do Blogger.
RSS

[androidbrasil-dev] Ajuda para migrar de Actionbar.Tabs para ViewPager por causa da API 21.

Pelo que eu entendi de leve, a hospedagem de tabs na actionbar ficou obsoleta na API 21. Ainda não entendi muito bem porque (se alguém explicar melhor eu agradeço) mas o que posso fazer é me adaptar. Fiz uma pesquisa e descobri algumas alternativas como a Sliding Tabs do Google Play com ViewPager, apesar de eu nunca ter usado ViewPager porque a Actionbar.Tab me servia muito bem.

Mas estou com alguns problemas e dúvidas na implementação porque essa ferramenta parece ser muito boa para tabs estáticas. O caso é que o meu app tem as tabs muito dinâmicas. Em virtude de ser um app de chat com cada conversa sendo exibida por um fragment, novas tabs surgem e são removidas a todo momento.

Eu não consegui alinhar muito bem a estratégia do ViewPager com este cenário. Percebi que a maneira como o adapter identifica a tab selecionada é muito diferente do tablistener da actionbar e também não encontrei métodos que adicionassem ou removessem tabs no adapter ou no SlidingTabs. Pensei em armazenar os fragments em um Arraylist para ser usado pelo adapter mas não sei se o adapter identificaria quando eu removesse ou adicionasse um fragment de lá. Outra questão que dinamiza as tabs é que os nicks dos usuários relativos à conversa são exibido nelas, e esse nick também pode mudar a qualquer momento e precisa ser atualizado no titulo da tab. Não sei ao certo quando o método getPageTitle() é chamado.

Pensando nessas diferenças decidi vir aqui pedir ajuda pois talvez haja até uma alternativa melhor para este caso que eu ainda não conheço ou alguma boa prática que deixe esse cenário viável.

Qualquer ajuda é bem vinda. Desde já, muito obrigado.

--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comentários:

Postar um comentário