我在我的Objective C项目中有一个UITextView (textView),它包含一些文本,并被放置在另一个视图(eView)中。textView的文本相当长,因此可以进行最大化和最小化操作。当然,我希望使用动画效果来完成这个操作。
我使用以下代码改变eView的高度:
- (void)setExtViewHeight:(CGFloat)newHeight withAnimation:(CGFloat)duration
{
[self setNeedsUpdateConstraints];
[UIView animateWithDuration:duration
animations:^
{
self.extViewHeight.constant = newHeight;
[self layoutIfNeeded];
[self.textView layoutIfNeeded];
}
completion:^(BOOL finished)
{
[self layoutSubviews];
}
];
}
我的问题是动画只能在extView上起作用。因此,当我尝试最小化视图时,textView会跳到新的高度,之后extView的高度会随着动画而改变。这个textView的跳跃真的很烦人,看起来也不好看。
我做错了什么?为什么textView的高度没有跟随动画呢?