大小 class 何时设置正确?
When is the size class properly set?
我正在尝试在我的单元测试中测试一些尺寸 class 的特定特征,但我 运行 遇到了尺寸 class 未正确设置的问题awakeFromNib
。当我 运行 应用程序时,在屏幕上显示所有内容后,通过在 LLDB 中检查它来正确设置它,但我似乎永远无法触发在进行单元测试时设置的大小 class。
有没有人知道何时设置特征收集/如何触发它?
编辑:为清楚起见,这些单元测试只测试视图,而不是 ViewController 它所在的视图。所以我从它的笔尖加载视图,然后对其执行测试。
我试过调用 layoutSubviews()
希望这会触发某种大小-class 设置,但它没有用。当我在 traitCollectionDidChange
中放置断点时,堆栈跟踪中只有 main
,所以我不确定实际触发它的是什么。
我明白了。关键是视图需要成为 window 的一部分才能更新其大小 class,因此以下代码解决了这种情况:
let window = UIWindow()
// "view" is the view you want the size class updated one
window.addSubview(view)
我正在尝试在我的单元测试中测试一些尺寸 class 的特定特征,但我 运行 遇到了尺寸 class 未正确设置的问题awakeFromNib
。当我 运行 应用程序时,在屏幕上显示所有内容后,通过在 LLDB 中检查它来正确设置它,但我似乎永远无法触发在进行单元测试时设置的大小 class。
有没有人知道何时设置特征收集/如何触发它?
编辑:为清楚起见,这些单元测试只测试视图,而不是 ViewController 它所在的视图。所以我从它的笔尖加载视图,然后对其执行测试。
我试过调用 layoutSubviews()
希望这会触发某种大小-class 设置,但它没有用。当我在 traitCollectionDidChange
中放置断点时,堆栈跟踪中只有 main
,所以我不确定实际触发它的是什么。
我明白了。关键是视图需要成为 window 的一部分才能更新其大小 class,因此以下代码解决了这种情况:
let window = UIWindow()
// "view" is the view you want the size class updated one
window.addSubview(view)