创建界面

var webView : UIWebView!
var toolBar : UIToolbar!
let swiftWH = UIScreen.mainScreen().bounds.size
webView = UIWebView(frame: CGRectMake(0, 20, swiftWH.width, swiftWH.height-49-20))
webView.delegate = self
webView.scrollView.bounces = false//禁止弹跳
self.view.addSubview(webView)
webView.loadRequest(NSURLRequest(URL: NSURL(string: "https://www.baidu.com")!)) self.createToolBarView()//工具栏

创建工具栏

func createToolBarView(){
let swiftWH = UIScreen.mainScreen().bounds.size
toolBar = UIToolbar(frame: CGRectMake(0, swiftWH.height-49, swiftWH.width, 49))
self.view.addSubview(toolBar) let backBtn = UIBarButtonItem(title: "后退", style: .Plain, target: self, action: Selector("backClick:"))
let forwardBtn = UIBarButtonItem(title: "前进", style: .Plain, target: self, action: Selector("forwardClick:"))
let refrashBtn = UIBarButtonItem(title: "刷新", style: .Plain, target: self, action: Selector("refrashClick:"))
let stopBtn = UIBarButtonItem(title: "停止", style: .Plain, target: self, action: Selector("stopClick:")) let space = UIBarButtonItem(barButtonSystemItem: .FlexibleSpace, target: nil, action: nil)
toolBar.setItems([backBtn,space,forwardBtn,space,refrashBtn,space,stopBtn], animated: true)
}

前进 后退 刷新 停止

func backClick(sender : UIBarButtonItem){
webView.goBack()
}
func forwardClick(sender : UIBarButtonItem){
webView.goForward()
}
func refrashClick(sender : UIBarButtonItem){
webView.reload()
}
func stopClick(sender : UIBarButtonItem){
webView.stopLoading()
}

UIWebViewDelegate

func webViewDidStartLoad(webView: UIWebView) {
//开始加载网页
print("开始加载数据")
}
func webViewDidFinishLoad(webView: UIWebView) {
//网页加载结束
print("网页加载结束")
if let titleStr = webView.stringByEvaluatingJavaScriptFromString("document.title"){
print(titleStr)
} }
func webView(webView: UIWebView, didFailLoadWithError error: NSError?) {
//网页加载失败
print("网页加载失败") }
func webView(webView: UIWebView, shouldStartLoadWithRequest request: NSURLRequest, navigationType: UIWebViewNavigationType) -> Bool {
//点击网页上的链接
let loadUrlStr = request.URL!
print(loadUrlStr) if navigationType == UIWebViewNavigationType.LinkClicked{//点击链接
return false
}
return true
}

来源:http://www.cnblogs.com/spaceID/p/4990665.html

UIToolbar+UIWebView 浏览器的更多相关文章

  1. 【IOS 开发】基本 UI 控件详解 (UIDatePicker | UIPickerView | UIStepper | UIWebView | UIToolBar )

    转载注明出处 : http://blog.csdn.net/shulianghan/article/details/50348982 一. 日期选择器 (UIDatePicker) UIDatePic ...

  2. 【iOS开发】UIWebView与JavaScript(JS) 回调交互

    ------------------------------------------------- 很多关于objc 与 js 交互的文章都比较适用于 mac开发,iOS的webview 还是有所不一 ...

  3. UIWebView与JavaScript(JS) 回调交互 -备

    很多关于objc 与 js 交互的文章都比较适用于 mac开发,iOS的webview 还是有所不一样, 参考:http://blog.sina.com.cn/s/blog_693de6100102v ...

  4. iOS开发系列--网络开发

    概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博.微信等,这些应用本身可能采用iOS开发,但是所有的数据支撑都是基于后台网络服务器的.如今,网络编程越来越普遍,孤立的应用通常是没有生命力 ...

  5. iOS-网络基础

    概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博.微信等,这些应用本身可能采用iOS开发,但是所有的数据支撑都是基于后台网络服务器的.如今,网络编程越来越普遍,孤立的应用通常是没有生命力 ...

  6. IOS网络开发概述

    概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博.微信等,这些应用本身可能采用iOS开发,但是所有的数据支撑都是基于后台网络服务器的.如今,网络编程越来越普遍,孤立的应用通常是没有生命力 ...

  7. iOS网络

    iOS开发系列--网络开发 2014-10-22 08:34 by KenshinCui, 1253 阅读, 19 评论, 收藏,  编辑 概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微 ...

  8. IOS_多线程_ASI_AFN_UIWebView

    H:/0730/00_多线程4票种_ViewController.h // // ViewController.h // 卖票 // // Created by apple on 13-7-29. / ...

  9. Swift - 使用UIWebView和UIToolbar制作一个浏览器

    使用网页控件(UIWebView)与工具栏控件(UIToolbar),我们可以自制一个小型的浏览器,其功能如下: 1,输入网址,点击“Go”按钮加载网页 2,加载过程中有进度条,同时可以点击停止按钮取 ...

随机推荐

  1. IE8一枝独秀的JS兼容BUG

    // 例如淡入淡出的封装类文件 function ImagesEff(div,time){ this.arr=[];//装载所有div this.time=time; this.recordOld=n ...

  2. Catch That Cow

    poj3278:http://poj.org/problem?id=3278 题意:给你一个n和k,n可以加1也可以减1,还可以乘2,现在要求n经过这样的几步变换可以使得n==k:求得最小的步数.题解 ...

  3. Rundeck,RUN起来!!

    零晨一点, 还好,跑起来了.. 满满的英文文档,肿么办?? 拿下!

  4. 【Java&Android开源库代码剖析】のandroid-smart-image-view

    Android应用开发已经进入到相对成熟的阶段,特别在国外,涌现出了各式各样的成熟稳定的开源库,供普通开发者使用.这种情况虽然极大加速了app开发的进程,但同时带来的问题是大多数普通开发者在使用这些开 ...

  5. 14.5.3 Locks Set by Different SQL Statements in InnoDB

    14.5.3 Locks Set by Different SQL Statements in InnoDB 通过不同的SQL语句设置的锁 在InnoDB中 一个锁定读, 一个UPDATE 或者一个D ...

  6. 【贪心】HDU 5783 Divide the Sequence

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5783 题目大意: 把一个N个数的数列拆成若干段,保证每一段的前缀和都非负,求最多能拆成多少段. 题目 ...

  7. 【解决办法】糟糕,我的电脑只有IE64位浏览器能上网,其他软件都上不了网

      最近两周在三班四班有5位同学电脑7次出现网络故障,表现为能连上锐捷.DNS正常却不能上网,其中在我自己的计算机上就发生了2次.上网搜集并整理了以下资料,供大家参考.请直接参见[解决办法]. [网上 ...

  8. 《傲慢与偏见》(Pride and Prejudice)

    <傲慢与偏见>(Pride and Prejudice)改编自英国作家简·奥斯汀的同名小说,1940年上映.讲述了19世纪初期英国的一个普通的中产家庭中五姐妹的爱情与择偶故事.片中因为男主 ...

  9. 用Processon在线绘制UML的尝试

    地址https://www.processon.com/ ProcessOn是一个面向垂直专业领域的作图工具和社交网络,成立于2011年6月并于2012年启动.ProcessOn将全球的专家顾问.咨询 ...

  10. javaweb笔记5之请求编码问题

    post提交: 设置实体内容的编码:request.setCharacterEncoding("utf-8"); 注意:一定要在获取所有参数之前设置,否则设置无效! get方式提交 ...