You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MAUI中如何隐藏TabbedPage的导航栏?

在MAUI中隐藏TabbedPage的导航栏

核心原因分析

你看到的导航栏并非TabbedPage自带,而是外层NavigationPage的导航栏——因为你在App.xaml.cs中将TabbedPage包裹在了NavigationPage内部,所以需要针对NavigationPage配置隐藏逻辑。

解决方案

方案1:移除NavigationPage包裹(最简方案)

如果你的应用不需要使用NavigationPage的导航栈功能,直接将TabbedPage设为MainPage即可:

修改App.xaml.cs代码:

public partial class App : Application
{
    public App()
    {
        InitializeComponent();
        MainPage = new MainPage(); // 去掉NavigationPage包裹
    }
}

方案2:保留NavigationPage并隐藏导航栏

若必须保留NavigationPage,可通过以下方式确保导航栏隐藏:

方式A:确认XAML属性生效

你的TabbedPage XAML中已添加NavigationPage.HasNavigationBar="False"属性,若未生效,可尝试代码后台强制设置。

方式B:代码后台强制设置

修改App.xaml.cs:

public partial class App : Application
{
    public App()
    {
        InitializeComponent();
        var navigationPage = new NavigationPage(new MainPage());
        // 强制隐藏当前页面的导航栏
        NavigationPage.SetHasNavigationBar(navigationPage.CurrentPage, false);
        MainPage = navigationPage;
    }
}

平台特殊处理(Android)

如果Android平台仍有残留顶部栏,可修改主题配置:
打开Platforms/Android/Resources/values/styles.xml,修改主题属性:

<style name="MainTheme" parent="MainTheme.Base">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
</style>

内容的提问来源于stack exchange,提问作者Nikita

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 01:24:55