Iphone 在UIWebView上打开本地pdf文件时发生应用程序崩溃

Iphone 在UIWebView上打开本地pdf文件时发生应用程序崩溃,iphone,objective-c,ios,Iphone,Objective C,Ios,只需使用以下代码在web视图中打开PDF - (void) viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; NSString *path = [[NSBundle mainBundle] pathForResource:@"About" ofType: @"pdf"]; NSLog(@"%@", path); NSURL *targetURL = [NSURL fileURLWit

只需使用以下代码在web视图中打开PDF

- (void) viewWillAppear:(BOOL)animated
{

 [super viewWillAppear:animated];

    NSString *path = [[NSBundle mainBundle] pathForResource:@"About" ofType: @"pdf"];

    NSLog(@"%@", path);

    NSURL *targetURL = [NSURL fileURLWithPath:path];

    NSURLRequest *request = [NSURLRequest requestWithURL:targetURL];

    [_webView loadRequest:request];

}
看看PDF是否存在

这可能对你有帮助

快乐编码..

试试这个:

NSString *filePath = [[NSBundle mainBundle] pathForResource:@"About" ofType:@"pdf"]; 
[self.webVctr loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:filePath]]];

这是另一个与通过web视图加载pdf无关的问题。我反复检查,发现了坠机的真正原因。无论如何,谢谢大家的帮助

你能解释一下它在哪里坠毁吗?什么信息?可能是地址不正确。提供更多信息每当我弹出控制器,然后按一个视图控制器,其中webview作为IBOutlet时,我都有一个导航控制器。我猜上面的代码会崩溃,但当我对上面的代码进行注释时,它运行得很平稳。这正是我显示PDF的方式。你能详细介绍一下错误消息吗?“Jul 16 15:48:45未知com.apple.debugserver-64[579]:3[0243/0303]:错误:::mach_vm_read(task=0x1603,addr=0x00000000,size=512,data=>0x00000000,dataCnt=>0)err=(os/kern)无效地址(0x00000001)”这是我在设备日志上看到的。你能创建webview控制器的属性吗?我不能创建webview控制器的属性。我不需要从类外部访问它,那么为什么我需要创建任何控制器或变量的属性呢?我正在使用UIWebView的IBOutlet,它连接到nib文件的控件。在我理解问题后,请您给我看一下错误日志-(7月16日15:48:45未知com.apple.debugserver-64[579]:3[0243/0303]:错误:::mach_vm_read(task=0x1603,addr=0x00000000,size=512,data=>0x00000000,dataCnt=>0)err=(os/kern)无效地址(0x00000001)“这就是我在设备日志上看到的,因为我知道问题不在于webview pdf加载,而在于其他问题……首先,请对所有pdf加载进行评论,然后运行应用程序,并让我知道问题所在。我已更改了答案,希望这会有所帮助
UIWebView *webView = [[UIWebView alloc] initWithFrame:CGRectMake(10, 10, 200, 200)];

NSString *path = [[NSBundle mainBundle] pathForResource:@"About" ofType:@"pdf"];
NSURL *targetURL = [NSURL fileURLWithPath:path];
NSURLRequest *request = [NSURLRequest requestWithURL:targetURL];
[webView loadRequest:request];

[self.view addSubview:webView];
[webView release];