我有UIViewController
UIWebView
,我正在放置PDF。
我面临的问题是,当我点击一个表格单元格来显示PDF时它没有第一次显示,但是如果我回到表格然后再次单击该单元格,它就会出现。
我使用以下内容调用PDF:
if ([indexPath row] == 2)
{
NSString *path = [[NSBundle mainBundle] pathForResource:@"myFirstPdf" ofType:@"pdf"];
NSURL *url = [NSURL fileURLWithPath:path];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[webViewVC.webView loadRequest:request];
webViewVC.parent = _parent;
[_parent pushViewController:webViewVC];
}
我使用webViewVC
分配的initWithNib
本身UIWebView
- 没有任何花哨的东西,只有UIWebView
IBOutlet
。
有什么想法吗?
答案 0 :(得分:2)
我认为你应该尝试两件事:
(1)首先,尝试从Web视图控制器加载PDF。这实际上是执行此操作的标准方法,而不是对甚至不在屏幕上的Web视图执行加载请求。保证所有插座仅在控制器的viewDidLoad
中加载。
(2)其次,尝试使用UIWebViewDelegate
。例如,您可以在加载完成后在Web视图上调用setNeedsDisplay
。
答案 1 :(得分:0)
我的想法:第一次尝试操作时,“webViewVC”尚未加载,因此webViewVC.webView为零
第二次因为你在第一次尝试时显示了webViewVC,它已被加载,所以webViewVC.webView不是零;
在您的webViewVC上创建一个属性,您可以在其中设置您的请求
并在您的webViewVC viewWillAppear方法上执行[self.webView loadRequest:self.request];