Swift - 网页控件(UIWebView)加载网页,本地数据,文件
2016-06-21 13:31
661 查看
使用UIWebView加载本地数据或资源有如下三种方式:
1,使用 loadHTMLString 方法加载HTML内容2,使用 loadRequest 方法加载本地资源(也可用于加载服务器资源)
3,先将内容保存成 NSData 数据,再使用 loadData 方法加载
代码如下:
override func viewDidLoad() {
super.viewDidLoad()
//调用
addwenview()
}
//加载网页到view的方法
func addwenview() {
let webview = UIWebView(frame:UIScreen.mainScreen().bounds )
let Requst = NSURLRequest(URL: NSURL(string: "https://www.baidu.com")!)
view.addSubview(webview)
webview.loadRequest(Requst)
webview.delegate = self //设置代理为本控制器
}
func webViewDidStartLoad(webView: UIWebView) {
//连接网络时,显示系统自带的联网小菊花
print("开始加载调用")
UIApplication.sharedApplication().networkActivityIndicatorVisible = true
}
func webViewDidFinishLoad(webView: UIWebView) {
print("加载完成调用")
//加载完成关闭联网小菊花
UIApplication.sharedApplication().networkActivityIndicatorVisible = false
}
func webView(webView: UIWebView, didFailLoadWithError error: NSError?) {
print("加载失败调用")
//加载失败了,我们可以创建一个按钮来重新加载,来重新调用 addwenview()方法
//或者提醒用户检查联网状态
//或者直接跳转到系统网络设置
//或者坐一些其它处理
}
}
如果出现类似错误: NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9802)
原因:在 iOS9中,在网络通话中ATS强制采用最佳实践,包括使用HTTPS.
解决办法: 右击 Info.plist 文件 -> Open As > Source Code
然后在最后的
</dict>之前添加如下代码即可:
[objc] view
plain copy
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
相关文章推荐
- Swift - 使用UIDatePicker实现倒计时功能
- Swift - 日期选择控件(UIDatePicker)的用法
- Swift - 各种手势检测大全(UIGestureRecognizer及其子类)
- Swift - 加速传感器(CoreMotion)的用法,小球加速运动并反弹样例
- Swift - 滚动视图(UIScrollView)的用法和实现页面滚动切换
- Swift - 微调器或叫步进器(UIStepper)的用法
- [Swift]ViewController中xib控件为空
- [Swift]ViewController中xib控件为空
- Swift必备开发库(高级篇)
- Swift必备开发库(高级篇)
- push 相关积累
- Swift 实现图片转字符画的功能
- Swift 算法实战之路:栈和队列
- Swift-基础-7
- GlusterFS替代OpenStack 的swift模块
- Swift - 告警提示框(UIAlertController)的用法
- Swift - 滑块(UISlider)的用法
- Swift - 进度条(UIProgressView)的用法
- Swift - 图像控件(UIImageView)的用法
- Swift - 分段选择控件(UISegmentedControl)的用法