setNeedsUpdateContraints()是否忽略了我?

时间:2015-01-24 17:33:41

标签: ios autolayout constraints size-classes

我有一个使用Auto Layout& amp;大小类。我放弃了试图让我的UIView使用Aspect Ratio 1:1约束来工作。它接管整个屏幕而不是像UIImageViewer那样设置height = width。

所以我试图改变宽度和高度限制。在IB中,宽度约束设置为320,高度约束设置为320.最终,我将宽度约束设置为设备的宽度,将高度约束设置为设备的宽度,希望获得相机的方形UIView显示其会话。

然而,当我设置常量然后setNeedsUpdateContraints时,没有任何反应。是的我不希望这样做,但我也希望得到这个& ^ & $ ^ #(工作的东西,而不是花费更多的时间来对抗它。设置领先的空间到0,尾随空格为0,顶部空间为0,宽高比为1:1不起作用。即使我用UIImageView做了它,它确实有效。

@IBOutlet var captureFrame: UIView!
@IBOutlet var viewHeightConstraint: NSLayoutConstraint!
@IBOutlet var viewWidthConstraint: NSLayoutConstraint!

override func viewDidAppear(animated: Bool) {
    self.viewWidthConstraint.constant = 100  //100 = temporary
    self.viewHeightConstraint.constant = 100  //100 = temporary
    captureFrame.setNeedsUpdateConstraints()
    captureFrame.layoutIfNeeded()
}

任何想法如何获得正方形UIView,以便可以使用IB,自动布局,尺寸等级在其中显示相机,而不是在X2中放大?

为什么我的约束条件不能调整为100?为什么我的UIView仍然是320 x 320?

0 个答案:

没有答案