当我使用相对空的webview更改方向时,屏幕旋转没有问题。一旦webview特别满内容并且它变得可滚动,旋转动画就变得非常慢。状态栏将首先旋转,视图将在3-5秒后显示。
目前,在willRotateToInterfaceOrientation中,我只是调整了webview的框架。
任何一位大师有什么见解?有没有办法强制视图提前旋转,或自己处理旋转?我该怎么办呢?我想在发生这种情况时显示一个加载屏幕,但它似乎相当俗气,特别是当用户将旋转小型网页时。
谢谢!
答案 0 :(得分:1)
没有重新发明轮子:没有。对于safari中的大文件,旋转需要很长时间,因此不太可能有任何可用的优化。无论如何我都没有找到(我在很长一段时间内对这个问题搞砸了)。
重新发明轮子:是的,通过滚动你自己的UIWebView并以某种方式使它在旋转速度方面胜过苹果。祝你好运。
答案 1 :(得分:1)
我的建议是在旋转时杀死动画..它会解放设备进行大量思考。禁用旋转可以这样完成:
- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation {
[UIView setAnimationsEnabled:YES];
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
[UIView setAnimationsEnabled:NO];
/* Your original orientation booleans*/
}
将它放在你的UIViewController中,一切都很好。相同的方法可以应用于iOS中任何不需要的动画。
祝你的项目好运。