새소식

iOS/Swift

[iOS] WKWebView

  • -

WKWebView (class) : 브라우저와 같은 대화형 웹 콘텐츠를 표시하는 객체


웹 콘텐츠를 앱의 UI에 원활하게 통합하는 데 사용하는 플랫폼 (Native View)

웹 브라우저의 기능을 앱 내에 통합하는 것을 가능하게 함

  • 웹 페이지의 로딩, 탐색, 스크롤과 같은 기능을 제공
  • 이 웹 뷰는 HTML, CSS, JavaScript 콘텐츠도 Native View에서 사용 가능합니다.

WebViewConfiguration을 사용하여 URL Scheme를 처리기를 설정하고, Cookie를 관리, 웹 콘텐츠의 대한 기본 설정을 사용자 정의

import UIKit
import WebKit


class ViewController: UIViewController, WKUIDelegate {
    
    var webView: WKWebView!
    
    override func loadView() {
        let webConfiguration = WKWebViewConfiguration()
        webView = WKWebView(frame: .zero, configuration: webConfiguration)
        webView.uiDelegate = self
        view = webView
    }


    override func viewDidLoad() {
        super.viewDidLoad()
        
        let myURL = URL(string:"https://www.apple.com")
        let myRequest = URLRequest(url: myURL!)
        webView.load(myRequest)
    }

 

웹 뷰가 스크린에 나타나면 URLRequest를 이용하여 컨텐츠를 웹서버로부터 로딩하거나 HTML String 또는 로컬 파일로부터

즉시 컨텐츠를 로딩

 

앞으로 및 뒤로 가기 등을 사용하여 다양한 웹페이지 간을 탐색하는 기능 포함

 

탐색을 허용하지 않거나 웹 보기의 탐색 동작을 사용자 정의 하려면 WKNavigationDelegate을 사용


 

WKWebView | Apple Developer Documentation

An object that displays interactive web content, such as for an in-app browser.

developer.apple.com

 

WKWebViewConfiguration | Apple Developer Documentation

A collection of properties that you use to initialize a web view.

developer.apple.com

 

[iOS] WKUIDelegate

WKUIDelegate(Protocol) : 웹페이지를 대신하여 기본 UI 요소를 표시하는 방법 새 창이 열리는 것을 제어 사용자가 요소를 클릭했을 때 표시되는 기본 메뉴 Item의 동작을 강화 기타 UI 관련 작업 수행 Java

kimkhuna99.tistory.com

 

[iOS] WKNavigationDelegate

WKNavigationDelgate 웹뷰의 탐색(navigation) 변경사항을 수락 또는 거부하고 탐색 요청 진행 상황을 추적하는 방법 WKNavigationDelegate | Apple Developer Documentation Methods for accepting or rejecting navigation changes, and f

kimkhuna99.tistory.com

 

[iOS] WKScriptMessageHandler

WKScriptMessageHandler(Protocol) 웹페이지에서 실행되는 JavaScript 코드로부터 메시지를 수신하기 위한 인터페이스 웹 뷰 안에서 JavaScript message를 앱에서 응답하는 방법 특히 MessageHandler를 타겟으로 메시

kimkhuna99.tistory.com

 

728x90

'iOS > Swift' 카테고리의 다른 글

[iOS] WKNavigationDelegate  (0) 2024.03.16
[Swift] Calendar  (0) 2024.03.09
[Swift] Mirror  (1) 2024.02.18
[iOS] viewIsAppearing(_:)  (0) 2024.01.28
[iOS] XCTest  (0) 2024.01.14
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.