在关闭自动布局的情况下更改UIView的高度

Phi*_*lip 10 resize uiview ios swift

关闭视图的自动布局.但这不起作用.我对身高没有任何限制.只有父级视图宽度相等的宽度.

@IBOutlet weak var questionTextView: UITextView!
override func viewDidLoad() {
  var newFrame = CGRectMake(0, 0, 300, 202)
  questionView.frame = newFrame
}
Run Code Online (Sandbox Code Playgroud)

mmi*_*ilo 29

您是否在界面构建器中关闭了整个笔尖的自动布局?

您无法在界面构建器中关闭特定子视图的自动布局 - 您只能在运行时以编程方式执行此操作.

根据你所说的你仍然有一个约束活跃.当你关闭自动布局时,你有什么限制?

如果激活了自动布局,则使用框架设置视图的高度将不起作用,因为它会与自动布局规则冲突.

如果需要在激活自动布局的情况下更改视图的高度,则需要IBOutlet为高度约束创建一个并在运行时修改它,即:

@IBOutlet weak var heightConstraint: NSLayoutConstraint!

self.heightConstraint.constant = 200
Run Code Online (Sandbox Code Playgroud)