在TwUI
中,在redraw
上有一种称为TUIView
的方法。它迫使 View 重新绘制,但是它也带有在 View 的旧状态和新状态之间的自由淡入淡出的动画。
我想知道在正常的UIView
中是否可以进行类似的操作。基本上,如何在旧状态和新状态之间使用淡入淡出的动画重绘 View (setNeedsDisplay
)?
最佳答案
将+[UIView transitionWithView:duration:options:animations:completion:]
与UIViewAnimationOptionTransitionCrossDissolve
选项一起使用,然后在动画块内部,强制 View 的图层立即重绘其内容。
[myView setNeedsDisplay];
[UIView transitionWithView:myView duration:1
options:UIViewAnimationOptionTransitionCrossDissolve
animations:^{
[myView.layer displayIfNeeded];
} completion:nil];