我有一个web应用程序,它的所有资源都包含在一个名为“war”的文件夹中。我将它们导入到我的xcode项目中(通过File - >“Add Files to'my项目'”)。从本地war文件夹加载html文件
现在我的Xcode项目的样子:
MyProject
|- war
|- foo.html
|- AppDelegate.h
|- AppDelegate.m
...
所以现在我尝试加载像:
NSBundle *bundle = [NSBundle mainBundle];
NSURL *url = [NSURL fileURLWithPath:[bundle pathForResource:@"foo" ofType:@"html"] isDirectory:NO];
NSURLRequest *req = [NSURLRequest requestWithURL:url];
[self.mWebView loadRequest:req];
我没有得到编译错误,但我的UIWebView是空的。我也得到了webViewDidLoad回调。有没有其他的方式来加载这样的本地网页?
感谢
+0
如果你保存的目录名称,使用[URLForResource:withExtension:子目录:(https://developer.apple.com/library/mac/documentation /Cocoa/Reference/Foundation/Classes/NSBundle_Class/Reference/Reference.html#//apple_ref/occ/instm/NSBundle/URLForResource:withExtension:subdirectory :)。如果文件夹已转换为项目中的组,则只需使用[URLForResource:withExtension:](https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Classes/NSBundle_Class/Reference /Reference.html#//apple_ref/occ/instm/NSBundle/URLForResource:withExtension :)。 –
+0
嗨,我认为dir的名字被保存下来,没有任何修改。出于某种原因,xcode抱怨你列出的第一种方法,称它没有找到。我可以得到“URLForResource:withExtension:subdirectory:inBundleWithURL:”来编译,但我不确定“inBundleWithURL”使用什么。你列出的不应该编译好吗?它说10.6及以上... ... –
+0
'NSURL * url = [[NSBundle mainBundle] URLForResource:@“foo”withExtension:@“html”subdirectory:@“war”];'适合我。 –