Есть ли какая-либо точка действия с одним фрагментом?

Все причины, по которым я могу найти использование фрагментов в действиях Android, связаны с возможностью отображения нескольких классов/представлений на одном экране, инкапсуляции нескольких логических компонентов и т.д.

Учитывая все это, кажется, фрагменты действительно полезны только при использовании многих из них.

Это так? Есть ли смысл использовать только один фрагмент в активности?

Я спрашиваю сейчас, потому что я видел вариант на Android Studio, чтобы сделать именно это, и мне интересно, в чем дело.

Android Studio New Activity with Fragment

Ответ 1

Из моего личного мнения я бы сказал да.

По следующим причинам:

  • Предполагая, что вы знакомы с фрагментами, создание фрагмента - вряд ли какая-либо дополнительная работа плюс имеет следующие преимущества.
  • Фрагменты могут быть легко использованы в другом месте (возможно, другое действие, которое имеет больше фрагментов, кроме того, Фрагменты не обязательно должны использовать весь экран).
  • Переходы активности более дороги, переходы фрагментов более сложные.
  • Фрагмент анимационной структуры лучше (с точки зрения удобства и производительности).
  • Я всегда хотел бы сократить количество операций до минимума, что делает AndroidManifest.xml коротким и чистым.
  • Пользовательский интерфейс, разделенный на фрагменты, приводит к созданию более чистой структуры кода и упрощению обслуживания кода.

В соответствии с рекомендациями по кодированию google лучше всего создавать как можно меньше Деяний и создавать вместо них несколько фрагментов, которые переключаются внутри Activity.

Ответ 2

Ну, это зависит, если вы собираетесь использовать этот фрагмент в другом действии, у вас есть "точка", и, возможно, в будущем вы сможете повторно использовать его для другого действия, но в случае, например, для экрана заставки, у него нет точки. Все зависит от использования, которое вы хотите предоставить вашему приложению.

Ответ 3

Плюсы:

- > многоразовый фрагмент кода

  • легко использовать его снова в любом модуле
  • легко отлаживать

- > обрабатывает изменения ориентации лучше, чем активность, используя setRetainInstance (true)

- > отличная помощь при масштабировании приложения в будущем для многострочных макетов или поддержки нескольких экранов

Минусы:

- > немного накладных расходов и времени, если вы не знакомы с фрагментами