Оболочка Xamarin.Forms
Введение
Оболочка Xamarin.Forms упрощает разработку мобильных приложений, предоставляя основные возможности, которые необходимы для большинства мобильных приложений. К ним относится реализация навигации пользователя, схема навигации на основе URI и обработчик интегрированного поиска.
Создание приложения оболочки Xamarin.Forms
Чтобы создать приложение оболочки Xamarin.Forms, нужно создать XAML-файл, в котором, в свою очередь, создается производный класс Shell
, задается свойство MainPage
класса App
приложения для подкласса объекта Shell
и описывается визуальная иерархия приложения в производном классе Shell
.
Flyout
Всплывающий элемент выполняет роль необязательного главного меню для приложения оболочки. Его можно вызвать специальным значком или жестом пальцем от края экрана. Всплывающий элемент состоит из входящих в него пунктов, а также (необязательно) заголовка, пунктов меню и нижнего колонтитула.
Вкладки
Следующим уровнем навигации после всплывающего меню в приложении оболочки является нижняя панель вкладок. Или же навигация по приложению может начинаться с нижней панели вкладок без использования всплывающего меню. В обоих случаях, если нижняя вкладка содержит более одной страницы, перемещение по ним осуществляется с помощью верхней панели вкладок.
Страницы
Объект ShellContent
представляет объект ContentPage
для каждого FlyoutItem
или Tab
.
Область
Приложения оболочки могут использовать схему навигации на основе URI, которая позволяет переходить на любую страницу в приложении без соблюдения строгой иерархии.
Найти
Приложения оболочки могут использовать интегрированную функцию поиска, которая реализована в виде поля поиска в верхней части каждой страницы.
Жизненный цикл
Приложения оболочки учитывают жизненный цикл Xamarin.Forms и дополнительно генерируют событие Appearing
, когда страница должна отобразиться на экране, а событие Disappearing
возникает, когда страница должна исчезнуть с экрана.
Пользовательские отрисовщики
Приложения оболочки можно настраивать через свойства и методы, которые предоставляются в классах оболочки. Но вы можете создать собственные отрисовщики оболочки, если доступных возможностей настройки для конкретной платформы недостаточно.