在应用约束之前,为UIImageView发出设置框架

时间:2015-12-11 18:08:11

标签: ios swift uiimageview nslayoutconstraint

我遇到了以下几行代码的问题:

 let imageName = "smiley.png"
 let imageU = UIImage(named: imageName)
 let imageView = UIImageView(image: imageU)
 imageView.frame = CGRect(x: 5.0, y: 5.0, width: 5.0, height: 5.0)
 contentView!.addSubview(imageView)
 let imageTopConstraint = NSLayoutConstraint(item: imageView, attribute: NSLayoutAttribute.TopMargin, relatedBy:  NSLayoutRelation.Equal, toItem: bodyText, attribute: NSLayoutAttribute.Bottom, multiplier: 1, constant: 5)
 let imageLeftConstraint = NSLayoutConstraint(item: imageView, attribute: NSLayoutAttribute.LeftMargin, relatedBy:  NSLayoutRelation.Equal, toItem: self.view, attribute: NSLayoutAttribute.Left, multiplier: 1, constant: 16)
 imageView.translatesAutoresizingMaskIntoConstraints = false
 NSLayoutConstraint.activateConstraints([imageTopConstraint, imageLeftConstraint])

当我运行此代码时,我得到了一个巨大的笑脸(可能是150x150),并且约束似乎也没有正常工作。设置框架然后应用约束是否有问题?以编程方式创建和约束视图时的最佳做法是什么?谢谢,并为半模糊的问题道歉。

0 个答案:

没有答案