Xamarin.Forms Shell, как убрать пробел элемента FlyoutItem в меню гамбургера - PullRequest
0 голосов
/ 28 октября 2019

Я использую Shell, и у меня есть дизайн, в котором у меня есть FlyoutItem со свойством FlyoutDisplayOptions в AsSingleItem, у меня также есть несколько MenuItem, у этого дизайна есть страница с вкладками и меню гамбургера, которое показывает MenuItem, но проблема заключается вчто он пуст, если я добавлю заголовок и значок всего элемента FlyoutItem, но если я оставлю его пустым, пространство не исчезнет и будет пустым, это пустое пространство, мой вопрос: как я могу удалить это пространство?

Это мой код:

    <FlyoutItem Route="home" x:Name="flyoutItem"
        FlyoutDisplayOptions="AsSingleItem">
    <ShellContent Route="bottomtab1"
                  Style="{StaticResource TabBackground}"
                  Icon="home_icon"
                  ContentTemplate="{DataTemplate views:x}" />
    <ShellContent Route="bottomtab2"
                  Style="{StaticResource TabBackground}"
                  Icon="home_icon"
                  ContentTemplate="{DataTemplate DataTemplate views:x}" />
    <ShellContent Route="bottomtab3"
                  Style="{StaticResource TabBackground}"
                  Icon="home_icon"
                  ContentTemplate="{DataTemplate DataTemplate views:x}" />
    <ShellContent Route="bottomtab4"
                  Style="{StaticResource TabBackground}"
                  Icon="home_icon"
                  ContentTemplate="{DataTemplate DataTemplate views:x}" />
    <ShellContent Route="bottomtab5"
                  Style="{StaticResource TabBackground}"
                  Icon="home_icon"
                  ContentTemplate="{DataTemplate DataTemplate views:x}" />
</FlyoutItem>

<MenuItem Text="Test 1"
          IconImageSource="home_icon" />

<MenuItem Text="Test 2"
          IconImageSource="home_icon" />

<MenuItem Text="Test 3"
          IconImageSource="home_icon"/>

<MenuItem Text="Test 4"
          IconImageSource="home_icon"/>

<MenuItem Text="Test 5"
          IconImageSource="home_icon"/>

<MenuItem Text="Test 6"
          IconImageSource="home_icon"/>

Я оставляю на этих изображениях дизайн Изображение 1 Изображение 2

1 Ответ

0 голосов
/ 28 октября 2019

Если вы хотите удалить элемент из FlyoutItem, но он все еще был показан в MainPage.Like после GIF. enter image description here

Прежде всего удалите содержимое FlyoutItem. Затем просто используйте TabBar для всего ShellContent, как показано в следующем коде.

  <TabBar>
    <Tab Title="Browse" Icon="tab_feed.png">
        <ShellContent ContentTemplate="{DataTemplate local:ItemsPage}" />
    </Tab>
    <Tab Title="About" Icon="tab_about.png">
        <ShellContent ContentTemplate="{DataTemplate local:AboutPage}" />
    </Tab>
  </TabBar>

Но если вы скроете это, когда вы щелкнете по любому элементу MenuItem, вы не вернетесь на homePage (покажите алиамиалыинформация). (Например, на моей домашней странице будет отображаться информация о сотрудниках, когда я нажимаю About Элемент меню, я не могу получить доступ к странице о моих сотрудниках, как показано в GIF),

enter image description here

Итак, я советую вам дать название и значок для вашего FlyoutItem, когда вы нажимаете другие элементы меню, вы можете вернуться к предыдущему homePage. Здесь запущен GIF. enter image description here

...