是否存在 traitCollectionDidChange 是唯一不能被 willTransition 替代的函数的情况?

问题描述

Apple 说 traitCollectionDidChange(... 当 iOS 界面环境改变时调用 和 willTransition(to:with:) 通知容器它的特征集合发生了变化。好的。 但是有没有我必须在 traitCollectionDidChange 而不是 willTransition 和 viewWillTransition 中严格调用代码?为什么我们需要单独的 traitCollectionDidChange( 函数?是否存在不能用 willTransition 替换 traitCollectionDidChange 的情况???

class VC : UIViewController {
override func traitCollectionDidChange(_ prevIoUsTraitCollection: uitraitcollection?) {
    print("\(type(of:self)) \(#function)")
    super.traitCollectionDidChange(prevIoUsTraitCollection)
}
override func viewWillTransition(to size: CGSize,with coordinator: UIViewControllerTransitionCoordinator) {
    print("\(type(of:self)) \(#function)")
    super.viewWillTransition(to: size,with: coordinator)
}
override func willTransition(to newCollection: uitraitcollection,with coordinator: UIViewControllerTransitionCoordinator) {
    print("\(type(of:self)) \(#function)")
    super.willTransition(to: newCollection,with: coordinator)
}
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...