UI基础视图----UIWebView总结

  UIWebView是UIKit框架中继承于UIView的一个常用的基础视图,和UILabel,UIImageView是兄弟类,用于展示一个网页。

  UIWebView是一个可以设置代理的类,在加载的不同状态有对应的协议方法,可以进行业务层面的逻辑处理。

  使用UIWebView可以做出一个简单的手机浏览器。

1:webView基本的属性和方法

  核心方法就是loadRequest:,用于加载一个请求,就可以实现展示一个网页。

  一个比较重要的属性是scalesPageToFit 缩放页面以适应屏幕。用于没有做移动端适配的网站来控制是否缩放

  注意:封装网络请求的时候网址的http://协议不能省略。

 1 - (void)viewDidLoad {
 2     [super viewDidLoad];
 3     //1:封装一个网络请求
 4     NSString * urlString = @"http://www.cnblogs.com/zhangys";//网址是一个字符串
 5     NSURL * url = [NSURL URLWithString:urlString];//把网址字符串转化为URL
 6     NSURLRequest * request = [NSURLRequest requestWithURL:url];//把URL封装成一个网络请求
 7     //2:实例化
 8     UIWebView * webView = [[UIWebView alloc] initWithFrame:self.view.frame];//像普通视图一样实例化
 9     //3:加载请求
10     [webView loadRequest:request];//webView的加载请求方法,把封装好的请求放进去
11     //4:设置代理为当前视图控制器
12     webView.delegate = self;
13     //5:缩放页面以适应屏幕
14     webView.scalesPageToFit = YES;
15     [self.view addSubview:webView];//UIView中层级关系很重要,不放在父视图上是显示不了的
16 }

2:代理方法

  当前视图控制器遵守UIWebViewDelegate协议,并且设置当前视图控制器为UIWebView的代理,就可以实现这个协议里面的方法,协议方法有四个,都是可选的(optional),可以根据需要来实现。这里实现三个,开始加载,结束加载和加载失败。

  注意:

  想要使用UIWebView的协议,必须有三部分:

  1:遵守协议(UIWebViewDelegate)

1 @interface ViewController () <UIWebViewDelegate>
2
3 @end

  2:设置代理

1     //4:设置代理为当前视图控制器
2     webView.delegate = self;

  3:实现协议方法

 1 #pragma mark - UIWebViewDelegate
 2
 3 //开始加载数据时调用
 4 - (void)webViewDidStartLoad:(UIWebView *)webView
 5 {
 6     NSLog(@"开始加载数据");
 7 }
 8 //结束加载数据时调用
 9 - (void)webViewDidFinishLoad:(UIWebView *)webView
10 {
11     NSLog(@"结束加载数据");
12 }
13 //加载失败时调用
14 - (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error
15 {
16     NSLog(@"加载失败");
17 }
时间: 2024-08-04 08:11:23

UI基础视图----UIWebView总结的相关文章

UI基础视图----UIImageView总结

UIImageView和UILabel一样,也是UIKit框架中非常常用的视图类.继承关系和UILabel完全一致(都是继承于UIView),功能也相似(用户交互都默认为关,主要用于展示),只不过UIImageView用于展示图片,UILabel用于展示文字. UIImageView主要用于展示两种图片,一种是静态图片,也是最基础的用法,另一种是动态图片(一组图片产生的动画效果).所以UIImageView除了可以使用从UIView继承下来的动画效果外,还可以使用自己的动画效果(显然自己的更常用

UI基础视图----UIScrollView总结

UIScrollView是UIKit框架下的很重要的视图类,是UIView的子类.UILabel,UIImageView,UIWebView分别用于展示文字,图片,网页,UILabel通过属性text来展示文字,UIImageView通过属性image来展示图片,UIWebView通过loadRequest:来展示网页(当然展示方法不止这些),UIScrollView虽然是这些视图类的兄弟类,但是并没有这些属性或者方法.但是根据UIView的层级关系,UIScrollView可以用来展示其他视图

UI基础:视图控制器.屏幕旋转.MVC

UIViewController 视图控制器,继承自UIResponder,作用:管理视图并且响应事件 功能: 1.分担APPdelegate的工作 2.实现模块独立,能提高复用性 创建UIViewController对象: UIViewController *viewController=[[UIViewController alloc]init]; UIViewController 自身带了一个UiView,默认的大小和屏幕大小一样. 每一个window都带有一个根视图,如果不给根视图赋值,

UI开发----基础视图和程序启动流程(delegate)

//  Create by 郭仔  2015年04月13日22:10:23 今天介绍的基础视图包括:UITextField.UIButton 一.定义UITextField: 创建UITextField与创建UILabel的步骤很相似.? 1.开辟空间并初始化(如果本类有初始化?方法,使?用?自?己的;否则 使?用?父类的).? 2.设置?文本显?示.输?入相关的属性? 3.添加到?父视图上,?用以显?示? 4.释放 UITextField * textField = [[UITextField

ios开发-UI基础-应用管理(单纯界面)改进5-使用代理实现监听下载按钮的点击(delegate)

[注意]转载时请注明出处博客园-吃唐僧肉的小悟空http://www.cnblogs.com/hukezhu/ 前几篇文章介绍了一个应用管理的小应用,从最开始的单纯实现功能,一步一步就行改进\封装,上篇文章是使用xib进行了优化,本篇文章使用代理实现监听下载按钮的点击. 在原来的基础上,使用代理的主要思路分析: 首先要新建一个协议 声明协议的要实现的方法(一般为optional) 声明一个遵守该协议的代理的属性 使用代理,通知其代理完成操作 在代理中的实现步骤: 遵守协议 设置代理(一般通过拖线

UI基础控件UIButton

一:UI基础 Button控件 1,简单说明:UIView和UIViewController间的关系 一个应用并不一定要有UIViewController,但是为了管理界面事件(比如按钮点击事件)一般我们在创建应用时要先创建控制器,控制器拥有一个UIView属性. UIView用来展示数据.及用户输入数据.监听事件的触发(比如按钮的touchupinside事件) 而控制可以用来处理这些事件,赋值UIView的管理. 按钮可以展示文字和图片,也就是说按钮具有这些属性. 2,按钮的三种状态 nor

Android UI基础

Android UI概述 Android UI由View和ViewGroup组成. ViewGroup是不可见的,用于组织和排版View和ViewGroup. View用户显示内容,以及响应用户的操作. 可以按照需要安排UI的叠放,不过叠放的层数越少,性能上来说越好. Android UI可以在code中生产,不过更加方便的方式是在Android的XML文件中定义UI. Layouts 通过XML方式实现 可以通过2种方式定义界面结构. 1. 在XML定义视图结构 2. 在运行时动态创建视图结构

iOS开发UI基础—IOS开发中Xcode的一些使用技巧

iOS开发UI基础-IOS开发中Xcode的一些使用技巧 一.快捷键的使用 经常用到的快捷键如下: 新建 shift + cmd + n     新建项目 cmd + n             新建文件 视图 option + cmd + 回车 打开助理编辑器 cmd + 回车           显示主窗口 cmd + 0             导航窗口 option + cmd + 0    工具窗口 在.m & .h之间切换           control + cmd + 上/下

IOS开发UI基础—在UIImageView中添加按钮以及Tag的参数说明

ios开发UI基础-在ImageView中添加按钮以及Tag的参数说明 一.tag参数 一个视图通常都只有一个父视图,多个子视图,在开发中可以通过使用子视图的tag来取出对应的子视图.方法为Viewwithtag: 提示点:在xib中如果想要通过tag参数获取对应的控件(属性),不要把tag的参数设置为0,因为xib中所有的对象默认tag都为0,设置为0取不到对象. 二.ImageView中添加按钮(1)ImageView和Button的比较 Button按钮的内部可以放置多张图片(4),而Im