在TwUI
中,redraw
上有一个名为TUIView
的方法。它会强制视图重绘,但它也会在视图的旧状态和新状态之间附带一个自由淡入淡出的动画。
我想知道在正常的UIView
中是否可能出现类似的情况。基本上,如何在旧状态和新状态之间使用淡入淡出的动画重绘视图(setNeedsDisplay
)?
答案 0 :(得分:41)
将+[UIView transitionWithView:duration:options:animations:completion:]
与UIViewAnimationOptionTransitionCrossDissolve
选项一起使用,并在动画块内强制视图的图层立即重绘其内容。
[myView setNeedsDisplay];
[UIView transitionWithView:myView duration:1
options:UIViewAnimationOptionTransitionCrossDissolve
animations:^{
[myView.layer displayIfNeeded];
} completion:nil];
答案 1 :(得分:1)
如何使用交叉溶解UIView过渡?
[UIView transitionWithView:aView
duration:TIME_INTERVAL
options:UIViewAnimationOptionTransitionCrossDissolve
animations:^{
// Change the view's state
}
completion:^(BOOL finished) {
// Completion block
}];