Swift - 网页控件(UIWebView)加载本地数据,文件

来源:互联网 发布:mac终端编辑文件命令 编辑:程序博客网 时间:2024/06/05 09:13

使用UIWebView加载本地数据或资源有如下三种方式:
1,使用 loadHTMLString 方法加载HTML内容
2,使用 loadRequest 方法加载本地资源(也可用于加载服务器资源)
3,先将内容保存成 NSData 数据,再使用 loadData 方法加载

使用样例
通过 UISegmentedControl 分别控制网页控件“显示HTML”“显示PDF”“loadData显示PDF”
这里写图片描述

////  ViewController.swift//  Swift - 网页控件(UIWebView)加载本地数据,文件import UIKitclass ViewController: UIViewController {    @IBOutlet weak var webview: UIWebView!    @IBOutlet weak var loadtype: UISegmentedControl!    override func viewDidLoad() {        super.viewDidLoad()        // 默认选中了分段控件的第一项        loadtype.selectedSegmentIndex = 0        typeChanged(loadtype)    }    /**     点击了分段控件     */    @IBAction func typeChanged(sender: UISegmentedControl) {        let index = sender.selectedSegmentIndex        print(index)        switch index {        case 0: // 在UIWebView中显示HTML内容            let html = "<h1>欢迎光临:<a href='http://qq.com'>qq.com</a></h1>"            webview.loadHTMLString(html, baseURL: nil)        case 1: // 在UIWebView中显示PDF内容            let path = NSBundle.mainBundle().pathForResource("test1", ofType: "pdf")            let urlStr = NSURL.fileURLWithPath(path!)            print(urlStr)            webview.loadRequest(NSURLRequest(URL: urlStr))        case 2: // 在UIWebView中显示PDF,但是是通过loadData方式加载            let path = NSBundle.mainBundle().pathForResource("test1", ofType: "pdf")            let urlStr = NSURL.fileURLWithPath(path!)            let data = NSData(contentsOfURL: urlStr)            webview.loadData(data!, MIMEType: "application/pdf", textEncodingName: "utf-8", baseURL:NSURL())        default:            print("是不是出错了?")        }    }}
0 0