본문 바로가기
프로그램/iOS

로컬 HTML파일을 UIWebView, WKWebView에 표시하기

by 로드러너 2019. 12. 27.
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

1. UIWebView, Bundle.main.path 를 이용하는 방법

 

    import WebKit

 

    @IBOutlet weak var webView: UIWebView!

    

    override func viewDidLoad() {

        super.viewDidLoad()

        // Do any additional setup after loading the view

        guard let localFilePath = Bundle.main.path(forResource: "test", ofType: "html")

            else {

                  print("path is nil")

                  return

                  }

        let url = URL(fileURLWithPath: localFilePath)

        let request = URLRequest(url: url)

        webView.loadRequest(request as URLRequest)

    }

 

 

2. UIWebView, Bundle.main.url 을 이용하는 방법

    

    import WebKit

 

    @IBOutlet weak var webView: UIWebView!

    

    override func viewDidLoad() {

        super.viewDidLoad()

        // Do any additional setup after loading the view.

        guard let url = Bundle.main.url(forResource: "test", withExtension: "html")

            else {

                  print("path is nil")

                  return

                 }

        let request = URLRequest(url: url)

        webView.loadRequest(request as URLRequest)

    }

 

 

3. WKWebView, Bundle.main.path 를 이용하는 방법

 

    import WebKit

 

    @IBOutlet weak var webView: WKWebView!

    

    override func viewDidLoad() {

        super.viewDidLoad()

        // Do any additional setup after loading the view

        guard let localFilePath = Bundle.main.path(forResource: "test", ofType: "html")

            else {

                  print("path is nil")

                  return

                  }

        let url = URL(fileURLWithPath: localFilePath)

        let request = URLRequest(url: url)

        webView.load(request as URLRequest)

    }

 

 

4. WKWebView, Bundle.main.url 을 이용하는 방법

    

    import WebKit

 

    @IBOutlet weak var webView: WKWebView!

    

    override func viewDidLoad() {

        super.viewDidLoad()

        // Do any additional setup after loading the view.

        guard let url = Bundle.main.url(forResource: "test", withExtension: "html")

            else {

                  print("path is nil")

                  return

                 }

        let request = URLRequest(url: url)

        webView.load(request as URLRequest)

    }

 

* test.html 파일의 위치는 프로젝트 폴더 밑에 어디에 있어도 검색이 된다.