objective-c - Xcode Autolayout - 横向/纵向约束

标签 objective-c xcode swift autolayout constraints

Landscape Mode Portrait Mode

我遇到了一个看起来很简单的自动布局任务:在纵向模式下将 3 个项目(宽高比均为 1:1)显示在彼此上方,在横向模式下并排显示。

我无法找到适合该布局的约束...有没有办法以编程方式进行?你会怎么做?

最佳答案

两种选择:
1. 在 Storyboard/Xib 中启用 Size Class,并对 wCompact|hRegular (Portrait) 和 wAny | 使用一组不同的约束。 hCompact(横向)
2. 根据设备的方向以编程方式进行约束。通常我是这样做的,覆盖 View Controller 中的 viewWillTransitionToSize:withTransitionCoordinator:,并触发约束更新。

关于objective-c - Xcode Autolayout - 横向/纵向约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35545236/

相关文章:

ios - 自定义 UITableView 标题设置背景颜色失败

javascript - 为什么 window.close 不适用于多个窗口

objective-c - 包含十六进制的 NSString 转换为等效的 ascii

objective-c - ios - 核心数据更新记录

iphone - 过度释放导致奇怪的核心数据错误?

c++ - Xcode 4.5.2 fatal error : Precompiled header has been modified

iphone - Facebook SDK : FBLoginView for publish stream

ios - 录制视频时在前后摄像头之间切换

iphone - 如何在从 UINavigationController 弹出 UIViewController 之前显示警报

php - 将 httpbody 作为 json 参数 swift 发布