15
我是iOS新手。我想要一个函数,根据常量中指定的内容从本地html资源文件或网页加载内容。我该怎么去做呢?例如,如果我将一个文件:// ...传递给函数或http:// ...,它应该相应地进行渲染。iOS - 在webview中显示HTML资源文件或远程网页的内容
我是iOS新手。我想要一个函数,根据常量中指定的内容从本地html资源文件或网页加载内容。我该怎么去做呢?例如,如果我将一个文件:// ...传递给函数或http:// ...,它应该相应地进行渲染。iOS - 在webview中显示HTML资源文件或远程网页的内容
您可以轻松地将网页是这样的:
NSURLRequest *request = [NSURLRequest requestWithURL:
[NSURL URLWithString:@"http://stackoverflow.com"]] ;
[webView loadRequest:request] ;
对于本地文件,这取决于您的设备上的文件的位置: 用于主要束文件(=您的项目),你可以使用相同的loadRequest 功能,但不同的构建路径:
NSString *localFilePath = [[NSBundle mainBundle] pathForResource:@"index" ofType:@"html"] ;
NSURLRequest *localRequest = [NSURLRequest requestWithURL:
[NSURL fileURLWithPath:localFilePath]] ;
[webView loadRequest:localRequest] ;
,如果要加载一个HTML字符串中的网页视图:
NSString *bundlePath = [[NSBundle mainBundle] bundlePath];
NSURL *baseURL = [NSURL fileURLWithPath:bundlePath];
NSString *htmlString = [bundlePath pathForResource:@"index" ofType:@"html"] ;
[webView loadHTMLString:htmlString baseURL:baseURL];
,如果你的HTML文件驻留在您的文档应用程序的文件夹(例如你下载一个html文件):
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask ,YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"index.html"];
NSURLRequest *documentsRequest = [NSURLRequest requestWithURL:
[NSURL fileURLWithPath:path]] ;
[webView loadRequest:documentsRequest] ;
感谢详细的解答! – Suchi 2011-12-20 16:23:48
关于这个问题的最佳答案我到目前为止看过,谢谢。 – 2012-09-10 08:36:33
如果我的HTML文件引用了一些与HTML文件一起存储在应用程序中的css文件,该怎么办?我如何通过适当的参考访问所有文件,以便正确显示我的html页面? – slonkar 2014-01-03 09:39:53