[Swift通天遁地]一、超级工具,4使用UIWebView

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

➤微信公众号:山青咏芝(shanqingyongzhi)

➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/

➤GitHub地址:https://github.com/strengthen/LeetCode

➤原文地址:

➤如果链接不是山青咏芝的博客园地址,则可能是爬取作者的文章。

➤原文已修改更新!强烈建议点击原文地址阅读!支持作者!支持原创!

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

热烈欢迎,请直接点击!!!

进入博主App Store主页,下载使用各个作品!!!

注:博主将坚持每月上线一个新app!!!

目录:[Swift]通天遁地Swift

本文将演示如何使用UIWebView(网页视图)加载HTML和Gif动画。

往项目中导入一张GIF图片(strengthen.gif)。

在项目导航区,打开视图控制器的代码文件【ViewController.swift】

 1 import UIKit
 2 
 3 class ViewController: UIViewController {
 4 
 5     //添加一个网页视图对象,作为当前类的属性
 6     var webView:UIWebView!
 7     
 8     override func viewDidLoad() {
 9         super.viewDidLoad()
10         
11         //获得当前设备的屏幕尺寸信息
12         let bounds = UIScreen.main.bounds
13         //创建一个矩形的显示区域
14         let frame = CGRect(x: 0, y: 40, width: bounds.width, height: bounds.height-40)
15         
16         //初始化一个网页视图对象,并以矩形区域作为其显示区域
17         webView = UIWebView(frame: frame)
18         //设置网页视图的背景颜色为无色
19         webView.backgroundColor = UIColor.clear
20         //将网页视图添加到当前视图控制器的根视图
21         self.view.addSubview(webView)
22         
23         //初始化一个按钮控件,并设置其显示区域。当用户点击该按钮时,将加载并渲染一段网页代码。
24         let loadHTML = UIButton(frame: CGRect(x: 40, y: 400, width: 240, height: 44))
25         //设置按钮在正常状态下的标题文字
26         loadHTML.setTitle("Load Html", for: .normal)
27         //设置按钮的背景颜色为棕色
28         loadHTML.backgroundColor = UIColor.brown
29         //给按钮绑定点击事件
30         loadHTML.addTarget(self, action: #selector(ViewController.loadHTML), for: .touchUpInside)
31         
32         //创建另一个按钮,当用户点击该按钮时,将加载项目中的Gif动画
33         let loadGIF = UIButton(frame: CGRect(x: 40, y: 470, width: 240, height: 44))
34         //设置按钮在正常状态下的标题文字
35         loadGIF.setTitle("Load Gif", for: .normal)
36         //设置按钮的背景颜色为棕色
37         loadGIF.backgroundColor = UIColor.brown
38         //给按钮绑定点击事件
39         loadGIF.addTarget(self, action: #selector(ViewController.loadGIF), for: .touchUpInside)
40         
41         //将两个按钮依次添加到当前视图控制器的根视图
42         self.view.addSubview(loadHTML)
43         self.view.addSubview(loadGIF)
44     }
45     
46     //添加一个方法,用来加载并渲染一段网页代码
47     func loadHTML()
48     {
49         //初始化第一个字符串常量,用来表示一段网页代码。
50         //该网页代码用来显示一段文字,并设置文字的颜色为红色,尺寸为30像素
51         let team = "<div >Strengthen</div>"
52         //初始化第二个字符串常量,用来表示一段网页代码。
53         //该网页代码用来显示一行文字,并设置文字中的电话号码的颜色为红色。
54         let tel = "<div>Tel:<span >18812345678</span></div>"
55         //初始化第三个字符串常量,该网页代码用来显示一行文字,并设置文字加粗的视觉样式
56         let url = "<div><b>Website:https://www.cnblogs.com/strengthen/</b></div>"
57         //将三个字符串拼接为一个字符串,
58         //拼接后的字符串将作为网页视图的内容。
59         let html = team + tel + url
60         
61         //设置网页视图的检测类型,网页视图将会突出显示符合该类型的内容
62         webView.dataDetectorTypes = [UIDataDetectorTypes.link, UIDataDetectorTypes.phoneNumber]
63         //调用网页视图读取网页代码的方法,加载刚刚创建的字符串常量
64         webView.loadHTMLString(html, baseURL: nil)
65     }
66     
67     //添加一个方法,用来将加载项目中的Gif动画
68     func loadGIF()
69     {
70         //获得项目束的主目录,使网页视图可以加载项目主目录下的资源
71         let resourceURL = Bundle.main.resourceURL
72         //调用网页视图的加载网页字符串的方法,加载主目录下的Gif文件
73         webView.loadHTMLString("<img src='strengthen.gif'>", baseURL: resourceURL)
74     }
75 
76     override func didReceiveMemoryWarning() {
77         super.didReceiveMemoryWarning()
78         // Dispose of any resources that can be recreated.
79     }
80 }