Load HTML File Into UIWebView Programmatically

In this code snipped demonstrates how to:

  • Create UIWebView programmatically
  • Implement UIWebViewDelegate functions webViewDidStartLoad and webViewDidFinishLoad
  • Load HTML file into UIWebView programmatically
import UIKit

class ViewController: UIViewController, UIWebViewDelegate {
    override func viewDidLoad() {
        // Do any additional setup after loading the view, typically from a nib.
        let myWebView:UIWebView = UIWebView(frame: CGRect(x: 0, y: 0, width: UIScreen.main.bounds.width, height: UIScreen.main.bounds.height))
        myWebView.delegate = self
        //3. Load local html file into web view
        let myProjectBundle:Bundle = Bundle.main
        let filePath:String = myProjectBundle.path(forResource: "my-html-file", ofType: "html")!
        let myURL = URL(string: filePath);
        let myURLRequest:URLRequest = URLRequest(url: myURL!)
    override func didReceiveMemoryWarning() {
        // Dispose of any resources that can be recreated.
    func webViewDidStartLoad(_ webView: UIWebView)
        print("Started to load")
    func webViewDidFinishLoad(_ webView: UIWebView)
        print("Finished loading")


Watch this video tutorial to learn how to create UIWebView using Xcode and Main Storyboard.

UIWebView and UIWebViewDelegate example in Swift

[raw_html_snippet id=”cookbookpagecoursesheader”]

Unit Testing Swift Mobile App

Apply Test-Driven Development(TDD) process to iOS mobile app development in Swift Preview this video course.