当我在开发iOS应用程序时,我需要用黑暗模式选项在模拟器中测试它,这样我就可以更清楚地了解应用程序的UI。但是当我进入设置时,我没有得到暗模式的选项,因为真实设备显示。
当前回答
或者,你也可以通过编程方式切换外观(docs):
override func viewDidLoad() {
super.viewDidLoad()
#if DEBUG
// change the appearance only while testing
overrideUserInterfaceStyle = .dark
#endif
}
其他回答
您可以切换界面模式(即亮/暗),以及调整动态类型设置(当模拟器运行时),如下所示:
在设置中,向下滚动到开发器,然后黑暗外观…
更新
除了上面的,现在有许多其他的方法来启用模拟器中的黑暗外观,如下面许多伟大的答案所示。
•从Xcode更改环境重写(@AshCameron)
从模拟器菜单中切换外观(@Shredder2794)
从命令行使用xcrun simctl ui启动外观更新…(@blackjacx, @tadija)
•编程使用overrideUserInterfaceStyle = .dark (@thisIsTheFoxe)
•在您的信息中指定UIUserInterfaceStyle。plist (@DhavalGevariya)
•使用Curtis Herbert的SimGenie…https://simgenie.app
你可以使用模拟器菜单中的“Toggle Appearance”(shiftcommand)设置:
模拟器>功能>切换外观
或者,你也可以通过编程方式切换外观(docs):
override func viewDidLoad() {
super.viewDidLoad()
#if DEBUG
// change the appearance only while testing
overrideUserInterfaceStyle = .dark
#endif
}
有两种方法在模拟器中启用暗模式。 注意:请确保您使用的是iOS 13模拟器。x d
解决方案1:更改生成设置
打开设置应用程序 选择开发人员 启用暗色外观
解决方案2:以编程方式
只需在ViewController文件中添加此代码块。
override func viewDidLoad() {
super.viewDidLoad()
#if DEBUG
// This changes appearance only for debug mode
overrideUserInterfaceStyle = .dark
#endif
}
查看苹果文档了解更多细节。
推荐文章
- 我如何获得iOS 7默认的蓝色编程?
- UITapGestureRecognizer破坏UITableView didSelectRowAtIndexPath
- 在Objective-C中@property保留,赋值,复制,非原子
- 6.5英寸屏幕的App store截图大小是多少?
- 我如何在NSAttributedString中创建一个可点击的链接?
- iOS测试/规格TDD/BDD以及集成和验收测试
- 停止UIWebView垂直“弹跳”?
- 启动屏幕故事板不显示图像
- 是否可以为iPhone应用程序(如YouTube和地图)注册一个基于http+域的URL方案?
- 模拟器错误fbssystemservicdomain代码4
- 改变UISegmentedControl的字体大小
- 我可以强制UITableView隐藏分隔符之间的空单元格吗?
- 获取用户当前位置/坐标
- 获得推送通知,而应用程序在前台iOS
- 如何取消选定的UITableView单元格?