以编程方式更改高度限制
我想以编程方式更改UITextView的高度约束,所以我将约束设置为我的控制器中的sockets,如下所示:
@property (strong, nonatomic) IBOutlet NSLayoutConstraint *descriptionHeightConstraint;
要改变它我做到以下几点:
self.descriptionHeightConstraint.constant = self.description.contentSize.height;
这个作品,如果我在viewDidAppear做,但这样做的问题是,我可以看到高度变化后,显示视图是不是非常用户友好,所以我试图做viewWillAppear但没有在那里工作,高度doesn'改变。 更改约束后调用setNeedsUpdateConstraints也不起作用。
为什么在viewDidAppear工作,而不是在viewWillAppear? 任何解决方法?
提前致谢!
尝试在viewDidLayoutSubviews
设置常量。
请注意,使用文本视图的contentSize
属性来设置文本视图的高度在iOS 7中不起作用。请参阅https://stackoverflow.com/a/18837714/1239263