我有自定义视图。此自定义视图有两个UIImageViews - imageview1和imageview2。
[UIView beginAnimations:nil context:nil]; [UIView setAnimationDuration:2.00]; [UIView setAnimationDelegate:self]; [UIView setAnimationDidStopSelector:@selector(transitionDidStop:finished:context :)]; [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:self cache:YES]; if(frontVisible){ [imageview1 removeFromSuperview]; [self addSubview:imageview2]; } 其他{ [imageview2 removeFromSuperview]; [self addSubview:imageview1]; } frontVisible =!frontVisible; [UIView commitAnimations];
图像从imageview1变为imageview2,反之亦然,但我没有得到翻转效果。相反,我看到另一个图像逐渐消失。
答案 0 :(得分:1)
不太确定,但我检查了文档,发现了这个:
<强>讨论强>
如果要在转换期间更改视图的外观 - 例如,从一个视图翻转到另一个视图 - 然后使用容器视图,UIView的实例,如下所示:
- 开始动画块。
- 在容器视图上设置转场。
- 从容器视图中删除子视图。
- 将新子视图添加到容器视图中。
- 提交动画块。
醇>
所以它说你必须创建一个容器视图才能使它正常工作。
答案 1 :(得分:1)
您没有让卷曲过渡工作的原因是因为卷曲过渡在模拟器中不起作用。它显示为淡化。