UIWebView中的Pdf带有返回其第一页的链接

时间:2013-02-06 16:32:31

标签: ios objective-c xcode pdf uiwebview

我正在开发一个应用程序,它在UIWebView中显示一个pdf。这工作正常。 pdf加载如下:

NSString *path = [[NSBundle mainBundle] pathForResource:@"file_name" ofType:@"pdf"];
NSURL *url= [NSURL fileURLWithPath:path];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[webview loadRequest:request];

但是pdf还在每个页面上包含一个链接以返回其第一页(目录)。 我在.xib文件中启用了用户交互和链接检测。当我使用模拟器或设备测试时,它在某些情况下有效,具体取决于iOS版本。

使用iOS 4.3(仅限模拟器):不起作用。链接无法识别,并被视为普通文本。 (所以我想我不会支持< iOS 5)

iOS 5.1(模拟器和设备):工作正常。每个链接都会将我返回到pdf的第一页。到目前为止没问题。

iOS 6.0(模拟器和设备):我使用的第一个链接只运行一次。当我再次尝试时,无论我使用哪个链接都没有任何反应。完全重新启动应用程序后,它再次运行,但只运行一次。

那么,是否有人知道如何使用与iOS 5.1相同的方式使用iOS 6?我已经阅读了一些类似的问题,解决方案似乎是根据CGDPF * api绘制pdf并扫描pdf以获取链接。 (类似于这里收集的内容:Fast and Lean PDF Viewer for iPhone / iPad / iOs - tips and hints?)但我想避免这种情况,如果可能的话,因为我不需要pdf查看器可以提供的所有功能。

希望有另一种方式并感谢阅读:)

1 个答案:

答案 0 :(得分:0)

我最近遇到了这个问题。原因在于iOS 6.1+,一旦您点击其中一个链接,您就导航到另一个页面(第一页),然后您需要“goBack”才能再次导航到文档中的任何页面。由于您正在显示与应用程序捆绑在一起的静态文档,因此您可能希望将这些页面链接替换为自定义链接,并实现分页机制以跳转到所需的页面,如:pdf:// Page_1。如果您需要实现的只是转到第一页,您的分页机制可以像将Web视图的滚动视图的内容偏移设置为0一样简单。