Полезные примеры Android

Полезные примеры Android
Android — Фрагменты

Фрагмент представляет собой часть деятельности , которая позволит более модульной конструкции деятельности. Не будет ошибкой, если мы скажем, что фрагмент — это разновидность вспомогательной деятельности .

Ниже приведены важные моменты о фрагменте —

  • У фрагмента есть собственный макет и собственное поведение с собственными обратными вызовами жизненного цикла.

  • Вы можете добавлять или удалять фрагменты в действии во время его выполнения.

  • Вы можете объединить несколько фрагментов в одном действии для создания многопанельного пользовательского интерфейса.

  • Фрагмент можно использовать в нескольких действиях.

  • Жизненный цикл фрагмента тесно связан с жизненным циклом его активности хоста, что означает, что когда действие приостановлено, все фрагменты, доступные в действии, также будут остановлены.

  • Фрагмент может реализовать поведение, не имеющее компонента пользовательского интерфейса.

  • Фрагменты были добавлены в Android API в версии Android Honeycomb, API версии 11.

Вы создаете фрагменты, расширяя класс Fragment, и вы можете вставить фрагмент в макет действия, объявив фрагмент в файле макета действия как элемент <fragment> .

До введения фрагментов у нас было ограничение, потому что мы могли отображать на экране только одно действие в один заданный момент времени. Поэтому мы не могли разделить экран устройства и управлять разными частями по отдельности. Но с введением фрагмента мы получили больше гибкости и сняли ограничение на одновременное отображение одного действия на экране. Теперь у нас может быть одно действие, но каждое действие может состоять из нескольких фрагментов, которые будут иметь свой собственный макет, события и полный жизненный цикл.

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

Фрагмент Android

Приложение может встраивать два фрагмента в действие A при работе на устройстве размером с планшет. Однако на экране размером с телефон не хватает места для обоих фрагментов, поэтому действие A включает только фрагмент для списка статей, а когда пользователь выбирает статью, запускается действие B, которое включает второй фрагмент для чтения. статья.

Жизненный цикл фрагмента

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

Fragment

Жизненный цикл фрагмента

Вот список методов, которые вы можете переопределить в своем классе фрагмента —

  • onAttach () Экземпляр фрагмента связан с экземпляром действия. Фрагмент и действие не полностью инициализированы. Обычно в этом методе вы получаете ссылку на действие, которое использует фрагмент для дальнейшей инициализации.

  • onCreate () Система вызывает этот метод при создании фрагмента. Вы должны инициализировать основные компоненты фрагмента, которые вы хотите сохранить, когда фрагмент приостановлен или остановлен, а затем возобновлен.

  • onCreateView () Система вызывает этот обратный вызов, когда пора фрагменту отрисовать свой пользовательский интерфейс в первый раз. Чтобы нарисовать пользовательский интерфейс для вашего фрагмента, вы должны вернуть компонент View из этого метода, который является корнем макета вашего фрагмента. Вы можете вернуть null, если фрагмент не предоставляет пользовательский интерфейс.

  • onActivityCreated () onActivityCreated () вызывается после метода onCreateView () при создании активности узла. Были созданы действие и экземпляр фрагмента, а также иерархия представления действия. На этом этапе представление можно получить с помощью метода findViewById (). пример. В этом методе вы можете создавать экземпляры объектов, которым требуется объект Context.

  • onStart () Метод onStart () вызывается, когда фрагмент становится видимым.

  • onResume () Фрагмент становится активным.

  • onPause () Система вызывает этот метод как первое указание на то, что пользователь покидает фрагмент. Обычно именно здесь вы должны зафиксировать любые изменения, которые должны сохраниться после текущего сеанса пользователя.

  • onStop () Фрагмент будет остановлен вызовом onStop ()

  • onDestroyView () Вид фрагмента будет уничтожен после вызова этого метода

  • onDestroy () onDestroy () вызывается для окончательной очистки состояния фрагмента, но не гарантируется, что он будет вызван платформой Android.

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

Это включает в себя ряд простых шагов для создания фрагментов.

  • Прежде всего решите, сколько фрагментов вы хотите использовать в действии. Например, мы хотим использовать два фрагмента для работы с альбомным и портретным режимами устройства.

  • Затем в зависимости от количества фрагментов создайте классы, которые будут расширять класс Fragment . Класс Fragment имеет вышеупомянутые функции обратного вызова. Вы можете переопределить любую из функций в зависимости от ваших требований.

  • В соответствии с каждым фрагментом вам нужно будет создать файлы макета в XML-файле. Эти файлы будут иметь макет для определенных фрагментов.

  • Наконец, измените файл активности, чтобы определить фактическую логику замены фрагментов в соответствии с вашими требованиями.

Типы фрагментов

В основном фрагменты делятся на три этапа, как показано ниже.

  • Фрагменты одного кадра — фрагменты одного кадра используются для ручных устройств, таких как мобильные телефоны, здесь мы можем показать только один фрагмент в качестве представления.

  • Фрагменты списка — фрагменты, имеющие специальный вид списка, называются фрагментом списка

  • Транзакция фрагментов — использование с транзакцией фрагментов. мы можем переместить один фрагмент в другой.

Select the fields to be shown. Others will be hidden. Drag and drop to rearrange the order.
  • Image
  • SKU
  • Rating
  • Price
  • Stock
  • Availability
  • Add to cart
  • Description
  • Content
  • Weight
  • Dimensions
  • Additional information
  • Attributes
  • Custom attributes
  • Custom fields
Click outside to hide the compare bar
Compare