我使用 Snapkit 构建了一个不使用界面构建器的应用程序来创建我的自动布局约束。纵向的一切看起来都很好,但是一些屏幕需要一些特定于横向的限制。
我已经在这里和谷歌搜索了关于这样做的快速介绍,但找不到任何适用的东西(我发现的一切都是基于使用 IB 或使用大小类而不是方向 - 我特别想要横向,而不是紧凑型与常规型)。
所以,我所有的自动布局约束现在都设置好了viewDidLoad
。至少毫无疑问,那些依赖于方向的需要移动到 UIViewController 上的某种委托/回调方法,但我不知道那是什么......
- 如何检测方向变化以改变我的约束?
- 我如何获得当前方向(所以当我第一次加载视图控制器时,我可以设置正确的约束......或者我上面的问题中的函数是否总是为每个加载的 VC 调用至少一次?)
- 在 ViewController 之外,例如自定义 UIView,如何检测方向变化?我应该发送自定义通知事件吗?我宁愿不让我的 UIViewController 告诉每个子视图它的方向已经改变。
谢谢你的帮助 :)