在真实设备上的 XCUI 测试中检测暗模式
Posted
技术标签:
【中文标题】在真实设备上的 XCUI 测试中检测暗模式【英文标题】:Detect dark mode in XCUI test on real devices 【发布时间】:2021-01-12 13:01:13 【问题描述】:我正在尝试寻找一种方法来检测手机是否在 XCUI 测试中处于暗模式。到目前为止,我得到了这个:
private func darkMode() -> Bool
if #available(ios 13, *)
return UIView().traitCollection.userInterfaceStyle == .dark
else
return false
这非常适用于模拟器,但不适用于真实设备。如何在真实设备上实现这一点?
注意:我知道有一种方法可以在 XCUI 测试中设置暗/亮模式。我不要这个,我只想检测它。
【问题讨论】:
【参考方案1】:只需在您的 viewController 中使用 traitCollectionDidChange
方法,如下所示:
//Call this method when you change UserInterface style
override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?)
print(previousTraitCollection," preview UI mode")
【讨论】:
以上是关于在真实设备上的 XCUI 测试中检测暗模式的主要内容,如果未能解决你的问题,请参考以下文章