在我的一个项目中,我仅使用 UIWebView。当我用其他内容重新加载 webView 时,我需要一个动画(例如翻转)...是否可以创建翻转动画(或类似的动画)?我必须创建一个假 Controller 才能得到它? 解决方案? 谢谢
最佳答案
您始终可以使用 Web View 执行 +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)
{
}];
此方法基本上是一种说法:“以动画方式更改此 View 的内容”。因此它会拍摄当前状态的快照,执行动画(无论是翻转、 curl 等),然后插入新状态的快照。
但请注意,我使用了 UIViewAnimationOptionAllowAnimatedContent
,这会强制动画不使用 View 新状态的快照,因为设置 loadHTMLString
不会更改立即查看,因此我们需要强制它使用 View 的实时上下文而不是快照。
iOS(7 之前)中的天气应用程序使用类似的方法,当单击底部的“i”时,可以在当前天气和其他区域/选项的选择器之间切换。
关于iphone - 当我重新加载 UIWebView 的内容时制作翻转动画(或类似的动画),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17636280/