webview的ipad定位问题

时间:2010-08-11 07:28:03

标签: ipad uiwebview orientation

我正在创建ipad应用程序。它只有2个视图。 一个视图几乎没有按钮。点击一个按钮,它将打开另一个视图。此视图具有显示PDF文件的webview。我正在使用以下代码来显示PDF

- (void)viewDidLoad {
[super viewDidLoad];
NSString* path = [[NSBundle mainBundle] pathForResource:@"mypdf" ofType:@"pdf"];
[webView loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:path]]];

}

现在的问题是,当我改变方向时,整个视图都在旋转,但是pdf受到干扰并且无法正确渲染。我怎么能避免这个?

由于PDF有250页,因此在willRotateToInterfaceOrientation和didRotateFromInterfaceOrientation上重新加载整个PDF会延迟显示。

如何避免这种情况。

1 个答案:

答案 0 :(得分:1)

必须有一种方法可以更好地避免/修复此问题,现在我只需阅读y滚动位置:

int scrollPosition = [[webView stringByEvaluatingJavaScriptFromString:@"window.pageYOffset"] intValue];

然后重新加载文档:

(void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation;

然后再次使用:

设置滚动位置

[webView stringByEvaluatingJavaScriptFromString: [NSString stringWithFormat:@"scrollTo(0,%d)",scrollPosition];