WebView
웹뷰는 하이브리드 앱 타입의 형태에서 가장 중요한 요소이다. 웹의 도메인을 가지고 호출하여, 네이티브 앱 안에 알맞게 구성해준다.
- iOS 8에서 지원했지만 iOS 9에서 제대로 지원됌 → 현재 UIKit에 있는 WebView는 중단되고 WebKit에 있는 WKWebView를 사용해야함
- 웹뷰는 주로 HTML 페이지를 보여주려는 목적으로 iOS에서 제공하는 기본뷰 객체로써, 일종의 내장형 웹 브라우저라고 할 수 있음
- 웹뷰는 일반 뷰를 추가하듯 뷰 컨트롤러 내부에 추가한 다음, 약속된 메서드를 호출하는 방식
- WKUIDelegate, WKNavigationDelegate 프로토콜 채택(해당 프로토콜 구현시, 웹 페이지에 대한 로딩 상황을 추적할 수 있음)
- WKWebView 및 Indicator 객체 생성
- webView(_webView: WKWebView, didStartProvisionalNavigation navigation: WKNavigation) : 검색을 시작할 때 이벤트 처리를 담당
- webView(_webView: WKWebView, didFinish navigation: WKNavigation!) : 검색이 종료되었을 때 실행될 코드를 담당
웹뷰의 메서드
- load() : 웹 페이지를 호출하는 역할
- goBack(), goForward() : 이전 페이지나 다음 페이지로의 이동