如何移除Xamarin Shell(带Flyout)中的无用头部区块?
移除Xamarin Shell Flyout中的指定区块
要移除Flyout里的“Вісточка”区块并仅保留“Налаштування”,可根据你的Flyout配置方式选择以下方法:
方法1:删除XAML中手动定义的FlyoutItem
如果Flyout项是在AppShell.xaml中手动声明的,直接找到对应标题的<FlyoutItem>元素删除即可:
<!-- 保留Налаштування对应的Flyout项 --> <FlyoutItem Title="Налаштування" Icon="settings_icon.png"> <ShellContent Route="SettingsPage" ContentTemplate="{DataTemplate local:SettingsPage}" /> </FlyoutItem> <!-- 删除Вісточка对应的Flyout项 --> <!-- <FlyoutItem Title="Вісточка" Icon="feed_icon.png"> <ShellContent Route="FeedPage" ContentTemplate="{DataTemplate local:FeedPage}" /> </FlyoutItem> -->
方法2:隐藏自动生成的Flyout项
如果“Вісточка”对应的页面是通过路由自动注册到Flyout的,可在该页面中设置隐藏:
页面XAML中配置
<ContentPage ... Shell.FlyoutItemIsVisible="False"> <!-- 页面内容 --> </ContentPage>
代码后台配置
public FeedPage() { InitializeComponent(); Shell.SetFlyoutItemIsVisible(this, false); }
方法3:调整Shell路由注册逻辑
如果是通过Routing.RegisterRoute自动将页面添加到Flyout,可改为仅将“Налаштування”页面关联到Flyout,或使用ShellSection/TabBar组织不需要显示在Flyout的页面。
完成操作后重新运行应用,Flyout菜单将仅保留“Налаштування”板块。
内容的提问来源于stack exchange,提问作者Vladik
相关产品推荐
相关产品推荐

