UIToolbar+UIWebView 浏览器
创建界面
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 浏览器的更多相关文章
- 【IOS 开发】基本 UI 控件详解 (UIDatePicker | UIPickerView | UIStepper | UIWebView | UIToolBar )
转载注明出处 : http://blog.csdn.net/shulianghan/article/details/50348982 一. 日期选择器 (UIDatePicker) UIDatePic ...
- 【iOS开发】UIWebView与JavaScript(JS) 回调交互
------------------------------------------------- 很多关于objc 与 js 交互的文章都比较适用于 mac开发,iOS的webview 还是有所不一 ...
- UIWebView与JavaScript(JS) 回调交互 -备
很多关于objc 与 js 交互的文章都比较适用于 mac开发,iOS的webview 还是有所不一样, 参考:http://blog.sina.com.cn/s/blog_693de6100102v ...
- iOS开发系列--网络开发
概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博.微信等,这些应用本身可能采用iOS开发,但是所有的数据支撑都是基于后台网络服务器的.如今,网络编程越来越普遍,孤立的应用通常是没有生命力 ...
- iOS-网络基础
概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博.微信等,这些应用本身可能采用iOS开发,但是所有的数据支撑都是基于后台网络服务器的.如今,网络编程越来越普遍,孤立的应用通常是没有生命力 ...
- IOS网络开发概述
概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博.微信等,这些应用本身可能采用iOS开发,但是所有的数据支撑都是基于后台网络服务器的.如今,网络编程越来越普遍,孤立的应用通常是没有生命力 ...
- iOS网络
iOS开发系列--网络开发 2014-10-22 08:34 by KenshinCui, 1253 阅读, 19 评论, 收藏, 编辑 概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微 ...
- IOS_多线程_ASI_AFN_UIWebView
H:/0730/00_多线程4票种_ViewController.h // // ViewController.h // 卖票 // // Created by apple on 13-7-29. / ...
- Swift - 使用UIWebView和UIToolbar制作一个浏览器
使用网页控件(UIWebView)与工具栏控件(UIToolbar),我们可以自制一个小型的浏览器,其功能如下: 1,输入网址,点击“Go”按钮加载网页 2,加载过程中有进度条,同时可以点击停止按钮取 ...
随机推荐
- W3C vs. WHATWG HTML5 Specs – The Differences Documented
A few weeks ago, HTML5 became an official W3C Recommendation. I took advantage of this event to disc ...
- 初始化rails上的compass项目
compass以外还有一个很实用的scss模块, _media-queries.scss 通过终端下载 curl -O https://raw.github.com/paranoida/sass-me ...
- iso 开发学习--简易音乐播放器(基于iPhone4s屏幕尺寸)
三个按钮 一个进度条 贴图(软件中部分图片,来自网络,如果侵犯了您的权益,请联系我,会立刻撤下) 核心代码 // // ViewController.m // 08-10-MusicPlayer / ...
- 如何给Qlabel添加clicked属性(覆盖mousePressEvent,处理QMouseEvent消息,反正是软绘制,想怎么样就怎么样)
clickedLabel.h #ifndef CLICKLABEL_H #define CLICKLABEL_H #include <QLabel> #include <QMouse ...
- 1027. Colors in Mars (20) PAT
题目:http://pat.zju.edu.cn/contests/pat-a-practise/1027 简单题,考察十进制数和n进制数的转换和输出格式的控制. People in Mars rep ...
- 【Java&Android开源库代码剖析】のandroid-smart-image-view
Android应用开发已经进入到相对成熟的阶段,特别在国外,涌现出了各式各样的成熟稳定的开源库,供普通开发者使用.这种情况虽然极大加速了app开发的进程,但同时带来的问题是大多数普通开发者在使用这些开 ...
- javascript 路线整理
前端开发很重要,编写脚本也不容易. 总结我以前的前端学习经历,基本是一团乱麻:css+javascript是在大三自学的,当时自己做课程设计,逼着自己在一个月之内,写了一个半成品的j2ee网站.当时, ...
- 字符串(KMP):BZOJ 3670 [Noi2014]动物园
3670: [Noi2014]动物园 Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 1521 Solved: 813[Submit][Status] ...
- java编码问题深入总结
Java语言能够这么普遍的应用,与其国际化的能力是 分不开的,国际化的编码是Java国际化中最重要的一个组成部分,Java的国际化编码能力与其使用Unicode编码是直接相关的.在Java中,任何 ...
- 如何更改项目所使用的C#版本