1.UIWebView的内容控制的属性/方法列表

loading属性               确认当前页面是否在读入中

canGoForward属性   确认goForward  方法是否可运行,可运行为yes;

canGoBack属性        确认goBack  方法是否可运行,可运行为yes。

goBack方法              
返回前一个页面

goForword方法          进入下一个页面

reload方法                
又一次读入当前页

stopLoading方法       中止当前页的读入

2.webViewController.h

@interface webViewController : UIViewController<UIWebViewDelegate,UINavigationControllerDelegate,UINavigationBarDelegate>
{
UIWebView *_webView;
} @property(nonatomic,strong)UIBarButtonItem *reloadButton;
@property(nonatomic,strong)UIBarButtonItem *stopButton;
@property(nonatomic,strong)UIBarButtonItem *backButton;
@property(nonatomic,strong)UIBarButtonItem *forwardButton;
@end

webViewController.m

- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
self.navigationItem.title = @"UIWebView測试版";
_webView = [[UIWebView alloc]init];
_webView.delegate = self;
_webView.frame = self.view.frame;
_webView.autoresizingMask = UIViewAutoresizingFlexibleHeight|UIViewAutoresizingFlexibleWidth;
_webView.scalesPageToFit = YES;
[self.view addSubview:_webView];
//工具条中追加按钮
_reloadButton = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemRefresh target:self action:@selector(reloadDidPush)];
_stopButton = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemStop target:self action: @selector(stopDidPush)];
_backButton = [[UIBarButtonItem alloc]initWithTitle:@"back" style:UIBarButtonItemStyleBordered target:self action:@selector(backDidPush)];
_forwardButton = [[UIBarButtonItem alloc]initWithTitle:@"Forward" style:UIBarButtonItemStyleBordered target:self action:@selector(forwardDidPush)];
NSArray *buttons = [NSArray arrayWithObjects:_backButton,_forwardButton,_reloadButton,_stopButton, nil];
[self setToolbarItems:buttons animated:YES];
[self.navigationController setToolbarHidden:NO animated:YES]; }
-(void)reloadDidPush
{
[_webView reload];//又一次读入页面
}
-(void)stopDidPush
{
if(_webView.loading){
[_webView stopLoading];//读入停止
} }
-(void)backDidPush
{
if (_webView.canGoBack) {
[_webView goBack];//返回前一画面
}
}
-(void)forwardDidPush
{
if (_webView.canGoForward) {
[_webView goForward];//进入下一页面
} } -(void)updateControlEnabled
{
//统一更新指示按钮状态
[UIApplication sharedApplication].networkActivityIndicatorVisible = _webView.loading;
_stopButton.enabled = _webView.loading;
_backButton.enabled = _webView.canGoBack;
_forwardButton.enabled = _webView.canGoForward; }
-(void)viewDidAppear:(BOOL)animated {
//画面显示结果后读入web页面画面
[super viewDidAppear:animated];
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.baidu.com"]];
[_webView loadRequest:request];
[self updateControlEnabled];
}
-(void)viewWillDisappear:(BOOL)animated
{
//画面关闭时状态的活动指示器设置成off
[super viewWillDisappear:animated];
[UIApplication sharedApplication].networkActivityIndicatorVisible = NO;
} -(void)webViewDidStartLoad:(UIWebView *)webView{
[self updateControlEnabled];
} -(void)webViewDidFinishLoad:(UIWebView *)webView {
[self updateControlEnabled];
}
-(void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error
{
[self updateControlEnabled];
}

UIWebView页面的控制(二)的更多相关文章

  1. Java中的流程控制(二)

    关于Java程序的流程控制(二) 关于Java程序的流程控制(二) 3.switch选择语句 switch语句用于将一个表达式的值同许多其他值比较,并按比较结果选择下面该执行哪些语句. switch( ...

  2. Vue + Element UI 实现权限管理系统 前端篇(十三):页面权限控制

    权限控制方案 既然是后台权限管理系统,当然少不了权限控制啦,至于权限控制,前端方面当然就是对页面资源的访问和操作控制啦. 前端资源权限主要又分为两个部分,即导航菜单的查看权限和页面增删改操作按钮的操作 ...

  3. Vue页面权限控制和动态添加路由

    原文转自:点我 页面权限控制 页面权限控制是什么意思呢? 就是一个网站有不同的角色,比如管理员和普通用户,要求不同的角色能访问的页面是不一样的.如果一个页面,有角色越权访问,这时就得做出限制了. Vu ...

  4. 浅谈HTML5单页面架构(二)——backbone + requirejs + zepto + underscore

    本文转载自:http://www.cnblogs.com/kenkofox/p/4648472.html 上一篇<浅谈HTML5单页面架构(一)--requirejs + angular + a ...

  5. html5 touch事件实现触屏页面上下滑动(二)

    五一小长假哪都没去,睡了三天,今天晕晕沉沉的投入工作了,但还是做出了一点点效果 上周用html5的touch事件把简单的滑动做出来了,实现了持续页面上下滑动的效果,参考之前 的文章及代码html5 t ...

  6. Database(Mysql)发版控制二

    author:skate time:2014/08/18 Database(Mysql)发版控制 The Liquibase Tool related Database 一.Installation ...

  7. 织梦dedecms页面中增加二维码功能的实现方法

    本文介绍了在dedecms中增加二维码功能的实现方法,有时需要在dedecms页面增加二维码,方便手机用户访问,有需要的朋友参考下. 本节内容: dedecms中增加二维码功能   1.打开/incl ...

  8. 【后台管理系统】—— Ant Design Pro页面相关(二)

    一.弹框Modal表单 使用Form.create()包装得到一个含有this.props.form属性的CreatForm自组件 从页面主(父)组件获得props数据和propsMethod方法 r ...

  9. web页面背景色控制

    有一道题要实现输入rgb数值,实现更换页面背景色的功能,如下图所示: 答案: <html> <head> <script type="text/javascri ...

随机推荐

  1. JavaSE1

    <The Pragmatic Programmer><The Mythical Man-month><Clean Code><The Clean Coder& ...

  2. 由字符串反转(使用递归)引申出来一道Java面试题

    如何面试一个从事编程工作的开发人员既困难又乏味,幸好还有很多值得参考的指南,比如:<Joel Guerilla Guide to interviewing>,但最后雇佣与否,还得由你自己决 ...

  3. redis_NoSql入门概述

    一.为什么要使用Nosql 今天我们可以通过第三方平台(如:google,facebook)可以很容易的访问和抓取数据.用户的个人信息,社交网络,地理位置,用户生成的数据和用户操作日志已经成倍的增加. ...

  4. 绘制bitmap 全屏 安卓获取 屏幕大小

    韩梦飞沙  韩亚飞  313134555@qq.com  yue31313  han_meng_fei_sha 绘制bitmap 全屏 Rectf rectF = new RectF(0, 0, w, ...

  5. luoguP4284 [SHOI2014]概率充电器 概率期望树形DP

    这是一道告诉我概率没有想象中那么难的题..... 首先,用期望的线性性质,那么答案为所有点有电的概率和 发现一个点的有电的概率来源形成了一个"或"关系,在概率中,这并不好计算... ...

  6. HDU1429 胜利大逃亡 状压bfs

    http://acm.hdu.edu.cn/viewcode.php?rid=22225154 因为总共a-j有10种钥匙,所以可以把有没有钥匙的状态压到一个int数里,然后dfs. 昨天状态特别不好 ...

  7. python3-开发进阶Flask的基础(4)

    今日内容: 上下文管理:LocalProxy对象 上下文管理:  请求上下文: request/session   app上下文:app/g 第三方组件:wtforms       1.使用      ...

  8. MySQL之thread cache

    最近突然对MySQL的连接非常感兴趣,从status根据thread关键字可以查出如下是个状态 show global status like 'thread%'; +---------------- ...

  9. 浅谈JVM-类加载器结构与双亲委派机制

    一.类加载器结构 1.引导类加载器(bootstrap class loader) 它用来加载Java的核心库(JAVA_HOME/jre/lib/rt.jar),是用原声代码来实现的,并不继承自ja ...

  10. LINUX 高可用群集之 ~Corosync~

    Corosync:它属于OpenAIS(开放式应用接口规范)中的一个项目corosync一版本中本身不具 备投票功能,到了corosync 2.0之后引入了votequorum子系统也具备了投票功能了 ...