A Fragment
representa a parte utilizável da IU da sua aplicação. Um fragmento define e gerencia o seu próprio “porção”, tem o seu próprio ciclo de vida, e pode lidar com os seus próprios eventos de entrada. Os fragmentos não podem viver por si próprios – devem ser alojados por uma actividade ou outro fragmento. A hierarquia de visão do fragmento torna-se parte da hierarquia de visão do hospedeiro.
Modularidade
Fragmentos introduzem modularidade e reusabilidade na IU da sua actividade, permitindo-lhe dividir a IU em pedaços discretos. As actividades são um local ideal para colocar elementos globais em torno da interface de utilizador da sua aplicação, tais como a gaveta de anavigation. Pelo contrário, os fragmentos são mais adequados para definir e gerir a IU de um único ecrã ou parte de um ecrã.
Considerar uma aplicação que responde a vários tamanhos de ecrã. Em ecrãs maiores, oapp deve exibir uma gaveta de navegação estática e uma lista numa disposição em grelha. Nos ecrãs maiores, a aplicação deve exibir uma barra de navegação inferior e uma lista numa disposição linear. A gestão de todas estas variações na actividade pode ser muito difícil. Separar os elementos de navegação do conteúdo pode tornar este processo mais fácil de gerir. A actividade é então responsável por exibir a IU de navegação correcta, enquanto o fragmento exibe a lista com a disposição apropriada.
Dividir a sua IU em fragmentos facilita a modificação da aparência da sua actividade em tempo de execução. Enquanto a sua actividade está no estado STARTED
lifecycle state orhigher, os fragmentos podem ser adicionados, substituídos, ou removidos. Pode manter um recordo destas alterações numa pilha de trás que é gerida pela actividade, permitindo que as alterações sejam invertidas.
Pode usar múltiplas instâncias da mesma classe de fragmento dentro da mesma actividade, em múltiplas actividades, ou mesmo como filho de outro fragmento. Com isto em mente, só deve fornecer um fragmento com a lógica necessária para gerir a sua própria IU. Deve evitar depender da ormanipulação de um fragmento de outro.
Para mais documentação e recursos relacionados com fragmentos, ver o seguinte.
Arrancar
- li>Criar um fragmento
Outros tópicos
- Gerenciador de fragmentos
- Transacções de fragmentos
- Animizar transições entre fragmentos
- Ciclo de vida do fragmento
- Saving estado com fragmentos
- Comunicar entre fragmentos e actividades
- Trabalhar com a barra de aplicação
- Exibir diálogos com DialogFragment
- Testar os fragmentos
Videos
- Atividade única: Porquê, Quando, e Como (Android Dev Summit ’18)
- Fragmentos: Passado, presente e futuro (Android Dev Summit ’19)