当我重新加载我的UIWebView的内容时,做一个翻转animation(或类似的东西)

在我的项目之一,我只使用一个UIWebView。 我需要一个animation(例如翻转)当我重新加载我的webView与另一个内容…是否有可能创build一个翻转animation(或类似的东西)? 我必须创build一个假控制器来获取它? 解决scheme? 谢谢

我认为你不需要为此创build一个控制器。 你可以简单地添加这样的东西:

[UIView beginAnimations:nil context:nil]; [UIView setAnimationDuration:0.80]; [UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:yourView cache:YES]; [UIView commitAnimations]; 

您始终可以通过Web视图执行+transitionWithView:duration:options:animations:completion:方法。

 [UIView transitionWithView:self.webView duration:1.0 options:UIViewAnimationOptionTransitionFlipFromLeft | UIViewAnimationOptionAllowAnimatedContent animations: ^{ [self.webView loadHTMLString:@"<strong>Hello world</strong>" baseURL:nil]; } completion:^(BOOL finished) { }]; 

这种方法基本上是这样说的:“以animation的方式改变这个视图的内容”。 因此,它会拍摄当前状态的快照,执行animation(例如,翻转,curl等),然后插入新状态的快照。

但是请注意,我已经使用了UIViewAnimationOptionAllowAnimatedContent ,这强制animation不使用视图的新状态的快照,因为设置loadHTMLString不会立即改变视图,所以我们需要强制它使用视图的活动上下文而不是快照。

iOS中的天气应用程序(前7)使用类似的方法在当前天气和其他地区/选项的选取器之间进行切换,方法是单击底部的“我”。