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

如何在MAUI程序的Mac Catalyst版本中隐藏标题栏?

在MAUI的Mac Catalyst应用中移除UIKit窗口标题栏

实现步骤

  • 打开项目中MacCatalyst文件夹下的Program.cs文件
  • 自定义AppDelegate类并重写窗口激活事件,通过UIKit API修改标题栏属性,具体代码如下:
using UIKit;

namespace YourAppName.MacCatalyst;

public class Program
{
    static void Main(string[] args)
    {
        UIApplication.Main(args, null, typeof(AppDelegate));
    }
}

public class AppDelegate : MauiUIApplicationDelegate
{
    protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();

    public override void OnWindowActivated(UIApplication application, UIWindow window)
    {
        base.OnWindowActivated(application, window);
        
        // 隐藏UIKit原生标题栏
        window.WindowScene.TitleBar.TitleVisibility = UITitlebarTitleVisibility.Hidden;
        // 可选:将标题栏背景设为透明,消除残留的栏位背景
        window.WindowScene.TitleBar.BackgroundStyle = UITitlebarBackgroundStyle.Transparent;
    }
}

关键说明

  • 选择在OnWindowActivated事件中操作,是为了确保窗口已经完成初始化,能正确获取到WindowScene对象
  • 通过WindowScene.TitleBar直接访问UIKit的标题栏实例,设置TitleVisibility为Hidden即可隐藏标题栏
  • 如果需要让标题栏所在区域完全和页面融合,添加BackgroundStyle的透明设置即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 08:15:31