【问题标题】:Chaning height of UIView改变 UIView 的高度
【发布时间】:2016-04-02 00:20:31
【问题描述】:

我正在尝试使用 Swift 更改 UIView 的高度和宽度,但它不起作用。尝试了下面的两个代码,仍然没有进展。

self.contentView.frame.size.height = 100

self.contentView.bounds.size.height = 100

contentView是主视图的子视图。

【问题讨论】:

  • 如果您使用的是自动布局,那么它将不起作用。为此,你必须采取约束的出口,然后改变它!

标签: ios swift view uiview height


【解决方案1】:

我猜你正在使用约束。当你使用约束时,你不应该改变框架,而应该改变约束本身。它应该是这样的:

在情节提要中,为您的视图选择高度约束并为控制器创建出口:

然后改变它的常数值:

@IBOutlet weak var heightConstraint: NSLayoutConstraint!

func changeHeight() {
  heightConstraint.constant = 200
// uncomment to perform changes with animation
//  UIView.animateWithDuration(0.3) { () -> Void in
  self.view.layoutIfNeeded()
//  }
}

【讨论】: