当前位置: 首页 > news >正文

【macOS】【Swift】不让App采用macOS的外观风格,直接保持白色背景,怎么处理?

【macOS】【Swift】不让App采用macOS的外观风格,直接保持白色背景,怎么处理?

如果你希望你的 macOS App 显示的文字不跟随系统的浅色/深色模式

而是始终使用白色背景(即强制浅色模式),

你可以通过设置 App 或特定视图的 appearance 来实现。


✅ 方法一:设置整个 App 为浅色外观

在你的 App 启动时(例如 AppDelegateapplicationDidFinishLaunching 方法中),设置:

NSApp.appearance = NSAppearance(named: .aqua)

这会让整个 App 强制使用浅色外观,无论系统设置是浅色还是深色模式


✅ 方法二:只设置某个视图为浅色外观

如果你只想让某个视图(例如 NSTextView)保持浅色背景,可以只设置该视图的 appearance

textView.appearance = NSAppearance(named: .aqua)

这样其他部分仍然可以跟随系统外观,只有这个视图保持浅色。


✅ 方法三:在 SwiftUI 中设置(如果使用的是 SwiftUI)

import SwiftUI@main
struct MyApp: App {var body: some Scene {WindowGroup {ContentView().preferredColorScheme(.light) // 强制浅色模式}}
}

✅ 效果

  • App 或视图始终使用浅色外观。

  • 背景为白色,文字为黑色。

  • 用户即使在系统设置中启用了深色模式,App 也不会变暗。


✅ 总结

方式适用范围代码示例
设置整个 App 为浅色全局NSApp.appearance = NSAppearance(named: .aqua)
设置某个视图为浅色局部textView.appearance = NSAppearance(named: .aqua)
SwiftUI 强制浅色SwiftUI App.preferredColorScheme(.light)

✅ 推荐方案

  • 如果你希望整个 App 始终保持白色背景,推荐设置:
    NSApp.appearance = NSAppearance(named: .aqua)

  • 如果你只想让 RTF 阅读区域保持白色背景,只设置:
    textView.appearance = NSAppearance(named: .aqua)
    即可。


http://www.dtcms.com/a/271012.html

相关文章:

  • 静态路由扩展实验
  • 【C++】unordered_set和unordered_map的实现
  • 三、Docker常用命令
  • HUAWEI HiCar6.0的新变化
  • 什么是 AMR 格式?简鹿音频转换器轻松批量转换 AMR 为 MP3
  • windows部署多实例filebeat监控相同路径下文件
  • 前端交互自定义封装类:“双回调自定义信息弹窗”
  • ai之 ubuntu本地安装mineru2.1.0
  • 整合Spring、Spring MVC与MyBatis:构建高效Java Web应用
  • Ubuntu22.04 设置显示存在双屏却无法双屏显示
  • DAS3D: Dual-modality Anomaly Synthesis for 3D Anomaly Detection 论文精读
  • 高通SG882G平台(移远),Ubuntu22编译:1、下载代码
  • 新零售“云化”进化:基于定制开发开源AI智能名片S2B2C商城小程序的探索
  • 中兴通讯首席项目管理专家、PMCoE负责人张宝忠受邀为PMO大会演讲嘉宾
  • redis的命令集合
  • WPF使用WebBrowser 解决href标签target=_blank在浏览器窗口打开新链接而非窗体内部打开的问题
  • Docker高级管理
  • 不深入,则无法共情
  • mysql 可用性的保障机制:主讲主从复制机制
  • Git 详解:从概念,常用命令,版本回退到工作流
  • 【03】MFC入门到精通——MFC 添加控件 设置属性 按钮 文本框
  • 《【第五篇】图片处理自动化:让你的视觉内容更专业!:图片处理基础与批量裁剪》
  • 06每日简报20250709
  • Vue 中mounted 生命周期钩子的执行时机和 v-for 的渲染顺序
  • linux-进程信号的产生与发送
  • 简单易懂的方式聊聊 DDD(领域驱动设计)
  • 汽车功能安全-软件单元验证 (Software Unit Verification)【用例导出方法、输出物】8
  • 分库分表之实战-sharding-JDBC水平分库+分表后:查询与删除操作实战
  • 【话题长廊测试报告】
  • qt绘制饼状图并实现点击即放大点击部分