iOS: muestra contenido de un file de resources html o una página web remota en una vista web.

Soy un novato de iOS. Quiero tener una function que cargue el contenido de un file de resources html local o una página web según lo especificado en una constante. ¿Cómo lo haré? Por ejemplo, si paso un file: // … a la function o un http: // …, debería mostrarse en consecuencia.

Puede cargar fácilmente páginas web como esta:

NSURLRequest *request = [NSURLRequest requestWithURL: [NSURL URLWithString:@"http://stackoverflow.com"]] ; [webView loadRequest:request] ; 

Para los files locales depende de la location del file en su dispositivo: para los files en su package principal (= su proyecto), puede usar la misma function loadRequest , pero compile la ruta de manera diferente:

 NSString *localFilePath = [[NSBundle mainBundle] pathForResource:@"index" ofType:@"html"] ; NSURLRequest *localRequest = [NSURLRequest requestWithURL: [NSURL fileURLWithPath:localFilePath]] ; [webView loadRequest:localRequest] ; 

y si desea cargar una html-string en su webView:

 NSString *bundlePath = [[NSBundle mainBundle] bundlePath]; NSURL *baseURL = [NSURL fileURLWithPath:bundlePath]; NSString *htmlString = [bundlePath pathForResource:@"index" ofType:@"html"] ; [webView loadHTMLString:htmlString baseURL:baseURL]; 

y si su file html reside en la carpeta de documentos de su aplicación (por ejemplo, un file html que descargó):

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