【发布时间】:2016-01-19 02:42:36
【问题描述】:
我有一个具有以下约束的 UIImageView:
- 身高等于 135
- 尾随空格至:SuperView = 0
- 领先空间:Superview = 0
- 顶部空间至:顶部布局 = 0
Xcode 7.2 Size Inspector 中 UIImageView 的宽度 = 600。
在我的UIViewController 中有一个通往 UIImageView 的出口:
@IBOutlet weak var heroImageView: UIImageView!
viewDidLoad 中 heroImagveView.center 的值 = (300.0, 67.5)
但这不是图像的实际中心,300 位于 iPhone 5 模拟器中 UIImageView 的右侧。更像(x: 160.0, y: 67.5) 的东西是中心,虽然 x 不准确。
在 Xcode 7.2 中,我所有 UIViewControllers 的默认宽度都是 600 像素,我知道这不会是跨不同 Apple 设备的运行时渲染宽度,但为什么 UIImageView.center 不理解这一点?
如何获得UIImageView 的实际运行时中心?
【问题讨论】:
-
代替 viewDidLoad ,在 viewDidAppear / viewWillAppear 方法中计算中心
-
自动布局将在 viewDidLayoutSubviews 中完成计算
标签: ios swift uiimageview