UIWebView 是IPhone SDK中常用的一个控件,是内置的浏览器控件,我们可以用它来浏览网页,打开文档等等,这次我将做一个简易的浏览器。由于在家写,没有装开发环境只能手写,没有图片等下次再补。
首先打开XCode 新建一个Single view Application ,命名为WebViewDemo;
在全局定义UIWebView *webview
UIActivityIndicatorView *indicatorview
UIWebView是用LoadRequest来加载这个Url地址,它需要一个NSUrlRequest参数。下面我们在.m文件中执行事件。
-(void)ViewDidLoad{
[super ViewDidLoad];
webview=[UIWebView alloc]initwithFrame:CGRectMake(0,0,self.view.frame.size.width,self.view.frame.size.height)];
webview.deledate=self;//加载UIWebView的方法
[self.view addsubview:webview];
[webview release];
Indicatorview = [[UIActivityIndicatorView alloc]
initWithFrame : CGRectMake(0.0f, 0.0f, 32.0f, 32.0f)] ;
[activityIndicatorView setCenter: self.view.center] ;
[activityIndicatorView setActivityIndicatorViewStyle: UIActivityIndicatorViewStyleWhite] ;
[self.view addSubview : Indicatorview] ;
NSURL *url=[NSURL urlwithstring:@"www.hao123.com"];
NSURLRequest *request=[NSURLRequest requestwithurl:url];
[webview loadrequest:request];
}
UIWebView主要有下面几个委托方法:
1、- (void)webViewDidStartLoad:(UIWebView *)webView;开始加载的时候执行该方法。
2、- (void)webViewDidFinishLoad:(UIWebView *)webView;加载完成的时候执行该方法。
3、- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error;加载出错的时候执行该方法。
- (void)webViewDidStartLoad:(UIWebView *)webView{//显示网页刷新菊花要定义一个UIActivityIndicatorView
[Indicatorview startAnimating];
}
- (void)webViewDidFinishLoad:(UIWebView *)webView{//刷新停止
[Indicatoriew stopAnimating];
}
- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error{
//随便写出什么警告,或者你想要表达的东西
}
如果你利用内置的浏览器浏览网页,需要获取你的浏览历史记录,你可以在网页加载完成这个函数(- (void)webViewDidFinishLoad:(UIWebView *)webView)中添加及时获取网址的代码。