Обзор оболочки .NET MAUI
Оболочка .NET Multi-Platform App UI (.NET MAUI) упрощает разработку приложений, предоставляя основные функции, необходимые большинству приложений, в том числе:
- единое место для описания визуальной иерархии приложения;
- общий пользовательский интерфейс навигации;
- схему навигации на основе URI, позволяющую реализовать переход на любую страницу в приложении;
- интегрированный обработчик поиска.
Визуальная иерархия приложений
В приложении оболочки .NET MAUI визуальная иерархия приложения описывается в классе, который подклассирует Shell класс. Этот класс может состоять из трех основных иерархических объектов:
- FlyoutItem или TabBar. Элемент FlyoutItem представляет один или несколько элементов во всплывающем элементе и должен использоваться, когда шаблон навигации для приложения требует всплывающего элемента. Представляет TabBar нижнюю панель вкладок и следует использовать, когда шаблон навигации для приложения начинается с нижних вкладок и не требует всплывающего меню. Дополнительные сведения о всплывающем элементе см. в всплывающем элементе .NET MAUI Shell. Дополнительные сведения о панелях вкладок см . на вкладках оболочки .NET MAUI.
- Tab представляет сгруппированное содержимое с навигацией по нижним вкладкам. Дополнительные сведения см . на вкладках оболочки .NET MAUI.
- ShellContent— представляет объекты для каждой ContentPage вкладки. Дополнительные сведения см. на страницах оболочки .NET MAUI.
Эти объекты определяют не пользовательский интерфейс, а то, как организована визуальная иерархия приложения. Оболочка принимает эти объекты и создает пользовательский интерфейс навигации для содержимого.
Примечание.
Страницы создаются по запросу в приложениях Оболочки в ответ на навигацию.
Дополнительные сведения см. в разделе "Создание приложения оболочки .NET MAUI Shell".
Пользовательский интерфейс навигации
Интерфейс навигации, предоставляемый оболочкой MAUI .NET, основан на всплывающих меню и вкладках. Верхний уровень навигации в приложении оболочки — это всплывающий элемент или нижняя панель вкладок в зависимости от требований к навигации приложения. В следующем примере показано приложение, где верхний уровень навигации является всплывающий элемент:
В этом примере некоторые всплывающие элементы дублируются как элементы панели вкладок. Однако существуют также элементы, доступ к которым возможен только из всплывающего окна. Выбор элемента приводит к отображению нижней вкладки, которая представляет выбранный элемент:
Примечание.
Если всплывающий элемент не открыт на нижней панели вкладок, можно считать верхним уровнем навигации в приложении.
На каждой вкладке на панели вкладок отображается ContentPage. Но если вкладка содержит более одной страницы, перемещение по страницам осуществляется с помощью верхней панели вкладок.
На вкладке можно перемещаться по дополнительным объектам ContentPage, называемым страницами сведений:
Оболочка использует интерфейс навигации на основе URI, который использует маршруты для перехода на любую страницу в приложении, не следуйте заданной иерархии навигации. Кроме того, есть возможность перемещаться в обратном направлении без обязательного посещений всех страниц в стеке навигации. Дополнительные сведения см. в разделе навигации оболочки .NET MAUI.
Search
Оболочка .NET MAUI включает интегрированные функции поиска, предоставляемые классом SearchHandler . Чтобы добавить на страницу функцию поиска, добавьте производный объект SearchHandler. После этого в верхней части страницы появится поле поиска. Когда в такое поле поиска вводится текст, область поисковых подсказок может заполняться данными:
Затем, когда результат выбирается из области вариантов, можно выполнить пользовательскую логику, например переход на страницу сведений.
Дополнительные сведения см. в поиске оболочки .NET MAUI.