Фрагменты позволяют создавать модульные и переиспользуемые компоненты пользовательского интерфейса внутри Activity.
Основные преимущества:
- Гибкость UI: Легко создавать различные конфигурации UI для разных размеров экранов и ориентаций (планшет vs телефон).
- Переиспользуемость: Один и тот же фрагмент может быть использован в нескольких Activity или несколько раз в одной Activity.
- Управление жизненным циклом: Фрагменты имеют свой собственный жизненный цикл, который связан с жизненным циклом Activity, но управляется отдельно.
- Навигация: Удобно использовать для реализации сложных навигационных потоков в пределах одной Activity (например, с Navigation Component).
- Управление состоянием: Позволяют сохранять состояние части UI при изменении конфигурации или навигации внутри Activity.
Пример использования для планшета (мастер-деталь):
| Левая панель (список элементов) | Правая панель (подробности выбранного элемента) |
|---|
ItemListFragment | ItemDetailFragment |
Пример кода добавления фрагмента в Activity:
kotlin