我有一个视图,根据视图中UILabel中的行数自动调整它的高度。还有另一个视图,其高度固定为与带标签的视图相等。
我想通过将长文本设置到标签来设置高度变化的动画,从而更改行数并导致自动布局约束重新计算高度。这个新高度也会改变第二个视图的高度。 如何为属性分配的副作用发生自动布局更改动画?
我尝试了这个,但它不起作用:
[UIView animateWithDuration:0.3 animations:^{
//I want the side effect of this assignment to be animated
self.viewWithLabel.title = @"This long title will change the view height and cause layout change";
}];
答案 0 :(得分:0)
尝试:
- (void)viewDidAppear:(BOOL)animated {
[self.view layoutIfNeeded];
[UIView animateWithDuration:1.0 animations:^{
self.viewWithLabel.title = @"This long title will change the view height and cause layout change";
[self.view layoutIfNeeded];
}];
}
我想你也希望yourTextLabel.clipToBounds = YES
如果您想要更高级的效果,请参阅this question。