Sobre o projeto
CYLTabBarController é uma biblioteca de componentes TabBar voltada para iOS, cujo principal objetivo é resolver a construção de barras de navegação inferiores personalizadas. Ela é implementada com base no UITabBar e UITabBarItem nativos do sistema, em vez de simular com UIButton ou UIView, portanto, ao usar as APIs de aparência do sistema e efeitos de transição de push, seu comportamento é mais próximo do sistema.
Principais recursos:
- Integração de TabBar com animação Lottie em uma linha de código, permitindo adicionar animações aos itens e ícones da TabBar.
- Suporte ao estilo de TabBar com botão de mais (+) no centro; o estilo e o frame do botão de mais são implementados em uma subclasse separada CYLPlusButton, e a exclusão dessa classe remove completamente o recurso.
- Detecção automática da necessidade do botão de mais e ordenação automática, com suporte para adicionar/remover dinamicamente o botão de mais e atualizar dinamicamente o estilo.
- Badge de ponto vermelho integrado, com suporte para View de badge personalizada.
- Suporte para que o TabBarItem exiba apenas o ícone e fique centralizado verticalmente, além de suporte para altura personalizada da TabBar.
- Suporte para aninhamento de múltiplas TabBars com posição especificada do PlusButton, e suporte para orientação horizontal e vertical.
- Quando o botão de mais ultrapassa a área da TabBar, a parte excedente ainda responde a cliques.
Versões recentes adicionaram suporte ao Liquid Glass e ao estilo de design flat para iOS 26 / iOS 27: é possível exibir simultaneamente a animação Lottie e o efeito Liquid Glass, e o botão de mais pode ser centralizado sobre o efeito Liquid Glass; suporta alternância entre os dois estilos em tempo de execução, facilitando testes graduais ou A/B; o estilo flat é integrado como um componente independente em formato de plugin, compartilhando a API com o estilo Liquid Glass. O README afirma que o Liquid Glass não é implementado com APIs privadas e explica que a quantidade de alterações de código para adaptação de atualização é pequena.
Forma de integração: via CocoaPods, o README apresenta um fluxo de quatro etapas — importar a biblioteca, definir o array de controllers e o array de propriedades da TabBar, definir o CYLTabBarController como RootViewController da window e, opcionalmente, criar um botão de mais personalizado. O projeto também fornece instruções de uso em Objective-C e Swift, forma de combinação com Storyboard e um Demo de acompanhamento.
O README também lista exemplos de Apps já publicados que usam a biblioteca (como Haidilao, C家, 淘必中, entre outros) e oferece canais de comunicação como QQ e Telegram. O repositório adota a licença MIT.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.