Muitas vezes as nossas aplicações precisam apresentar algum site, carregar um arquivo html ou algum código em html. Para isso usamos a UIWebView. Nesse tutorial aprenderemos simples passos para a execução dessas tarefas.
1- Crie uma Single View Application (Clique na imagem para ampliar):
2- Na sua Main.storyboard adicione a UIWebView:
3- Faça as seguintes alterações em ViewController.h:
[sourcecode language=”objc” collapse=”true”]
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController
@property (weak, nonatomic) IBOutlet UIWebView *web;
@end
[/sourcecode]
4- Associe a UiWebView criada na sua Storyboard à IBOutlet UIWebView:
5- Neste passo iremos apresentar 3 funções diferentes para cada tarefa proposta, para testar cada uma em sua viewDidLoad descomente apenas a chamada da função desejada. A função loadURL carrega uma URL passado através de uma NSSTRING, já a função loadHTMLFile carrega um arquivo html incluso ao projeto e por fim loadHTML carrega um código html passado através de uma NSSTRING. Descomente a chamada da funcão correspondente em viewDidLoad para o resultado desejado.
[sourcecode language="objc" collapse="true"]
#import "ViewController.h"@interface ViewController ()
@end
@implementation ViewController
@synthesize web;- (void)viewDidLoad {
[super viewDidLoad];//Para carregar descomente. Web site: loadURL.
//[self loadURL];//Para carregar descomente. Código html: loadHTML.
//[self loadHTML];//Para carregar descomente. Arquivo html: loadHTMLFile.
//[self loadHTMLFile];
}- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}- (void)loadURL {
NSString *urlAddress = @"http://www2.decom.ufop.br/imobilis/";//Create a URL object.
NSURL *url = [NSURL URLWithString:urlAddress];//URL Requst Object
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];//Load the request in the UIWebView.
[web loadRequest:requestObj];}
- (void)loadHTMLFile{
NSString *htmlFile = [[NSBundle mainBundle] pathForResource:@"index" ofType:@"html"];
NSString* htmlString = [NSString stringWithContentsOfFile:htmlFile encoding:NSUTF8StringEncoding error:nil];
[web loadHTMLString:htmlString baseURL:nil];
}-(void)loadHTML{
//load html content into webview
NSString *embedHTML = @"
<h2>UIWebView Exemplo</h2>
1. Carrega Web site: loadURL.
2.Carrega código html: loadHTML.
3.Carrega arquivo html: loadHTMLFile.
";
[web loadHTMLString:embedHTML baseURL:nil];
}@end
[/sourcecode]6- Pronto! Compile e execute o projeto e obtenha o seguinte resultado: