★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
➤微信公衆號:山青詠芝(shanqingyongzhi)
➤博客園地址:山青詠芝(https://www.cnblogs.com/strengthen/)
➤GitHub地址:https://github.com/strengthen/LeetCode
➤原文地址:http://www.javashuo.com/article/p-bzmcityl-eg.html
➤若是連接不是山青詠芝的博客園地址,則多是爬取做者的文章。
➤原文已修改更新!強烈建議點擊原文地址閱讀!支持做者!支持原創!
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★html
目錄:[Swift]通天遁地Swiftgit
本文將演示如何使用UIWebView(網頁視圖)加載HTML和Gif動畫。github
往項目中導入一張GIF圖片(strengthen.gif)。web
在項目導航區,打開視圖控制器的代碼文件【ViewController.swift】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 style='color:#ff0000;font-size:30px;'>Strengthen</div>" 52 //初始化第二個字符串常量,用來表示一段網頁代碼。 53 //該網頁代碼用來顯示一行文字,並設置文字中的電話號碼的顏色爲紅色。 54 let tel = "<div>Tel:<span style='color:#ff0000'>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 }