2017-07-21 60 views
0

我是新的iOS和当我打开PDF UIWebView我在控制台中得到像这样的警告。无法加载Webview的PDF文件与警告void SendDelegateMessage(NSInvocation *)

void SendDelegateMessage(NSInvocation *): delegate (webView:didFirstLayoutInFrame:) failed to return after waiting 10 seconds. main run loop mode: kCFRunLoopDefaultMode 

2017-07-11 16:55:38.304119+0530 appname[1334:540218] libMobileGestalt MobileGestalt.c:550: no access to InverseDeviceID (see <rdar://problem/11744455>) 

这里是下面的代码从一个NSBundle

打开PDF文件的网页视图
visionweb.delegate=self; 

NSURL *targetURL = [[NSBundle mainBundle] URLForResource:@"a0" withExtension:@"pdf"]; 
NSURLRequest *request = [NSURLRequest requestWithURL:targetURL]; 

[visionweb loadRequest:request]; 

[self.view addSubview:visionweb]; 

这里visionweb是我UIWebView的对象。

我试图打开其他PDF文件使用相同的代码,并能够打开它们。但是当我尝试打开这个特定的文件时,它会在控制台上显示上面的消息。当我尝试打开另一个PDF文件

无论是委托方法

  1. - (void)webViewDidStartLoad:(UIWebView *)webView;
  2. - (void)webViewDidFinishLoad:(UIWebView *)webView;

被调用。

但是,当我尝试打开该特定的PDF文件时,它只调用第一个委托方法,即只有-(void)webViewDidStartLoad:(UIWebView *)webView;被调用,而不是另一个。

我无法理解背后的问题。我在互联网上搜索它,发现很多人面临同样的问题,但他们的解决方案并没有帮助我。我正在使用Xcode 6.2。

回答

0

这是一个解决方案。我使用下面的代码,它为我工作。

termsWebView.delegate = self; 
NSString *path = [[NSBundle mainBundle] 
pathForResource:@"Terms_of_Use_20170523" ofType:@"docx"]; 

NSURL *url = [NSURL fileURLWithPath:path]; 
NSURLRequest *request = [NSURLRequest requestWithURL:url]; 
[termsWebView loadRequest:request]; 
+0

@ Jignesh-Yes。我也使用相同的代码和其他文件的工作,但是当我尝试打开这个文件 - >“a0.pdf”时,它在控制台中给了我上述警告。有没有其他的方式来加载在Web视图上的PDF或其他方式来检测该PDF文件的内容是否正确。请帮助我。 – Muju

+0

NSData * WebData = [NSData dataWithContentsOfURL:soundURL]; [_webView loadData:WebData MIMEType:@“application/pdf”textEncodingName:@“UTF-8”baseURL:nil]; 试试这个! –

+0

对我没有帮助。 – Muju