2011-12-20 56 views

回答

35

您可以輕鬆地將網頁是這樣的:

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] ; 
+0

感謝詳細的解答! – Suchi 2011-12-20 16:23:48

+0

關於這個問題的最佳答案我到目前爲止看過,謝謝。 – 2012-09-10 08:36:33

+1

如果我的HTML文件引用了一些與HTML文件一起存儲在應用程序中的css文件,該怎麼辦?我如何通過適當的參考訪問所有文件,以便正確顯示我的html頁面? – slonkar 2014-01-03 09:39:53