ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • WKWebView
    ios 2020. 3. 20. 01:01

    안녕하세요. 

     

    저는 ios 개발을 시작하는 개발자로서 문서를 중심으로 보려고 합니다. 

     

    이제부터 제가 읽은 애플 문서를 설명하려고 합니다. 

    오늘은 WKWebView에 대해서 이야

    WKWebView의 오브젝트를 사용하여 웹 컨텐츠를 보여주는 것이다. 

     

     

    Starting in iOS 8.0 and OS X 10.10, use WKWebView to add web content to your app. Do not use UIWebView or WebView.

    중요한 점은, IOS 8.0과 OS X 10.10를 사용해야 하며, WKWebView를 사용하여 당신의 앱에 웹 컨텐츠를 추가할 수 있다고 합니다. 

    단, UIWebView 또는  WebView를 사용하지 말라고 합니다.( 그 이유는, deprecated 되었기 때문이죠)

     

    To do so, create a WKWebView object, set it as the view, and send it a request to load web content.

     

    웹 컨텐츠를 앱에 보여주기 위해서는 몇 가지 단계가 필요합니다.

     

    1. WKWebView의 오브젝트를 생성

    2. request를 보낸다...

     

    이렇게 보면 굉장히 간단하고 쉬어보이죠?

     

    WKWebView에서 httpBody 컨텐츠로 POST 요청을 할 수 있다고 합니다. 

     

    위에서 설명하던 몇 가지 단계는 너무 이해하시기 조촐하죠?

     

    더 자세하게 설명해보겠습니다.~.~

     

    1. init(frame : configuration)을 사용하여 WKWebView의 오브젝트를 생성합니다. 

    2. web content를 load 하기 위해서  loadHTMLString(_:baseURL:) method를 사용합니다. 

    loadHTMLString(_:baseURL:) 는  baseURL을  로컬 HTML을 로딩하는 용도입니다. 

    또는 

     load(_:) method를 사용하여 웹 컨텐츠를 로딩할 수 있습니다. 

    3. 로딩을 멈추려면 stopLoading() method

    4. 웹 뷰가 로딩의 프로세스인지 아닌지 판단하기 위해,  WKWebView의  isLoading property를 사용하면 된다.

    5. 웹 뷰 오브젝트에 delegate를 설정합니다. ( 웹 컨텐츠의 로딩을 추적하려면  WKUiDelegate 프로토콜을 준수해야한다고 합니다.)

     

     

     

     

     

     

     

     

    테스트 시, 

    <key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> </dict>

    info.list에  <dict> </dict> 안에 위 문구를 추가해줘야 http 통신을 할 수 있다.

    'ios' 카테고리의 다른 글

    단위 테스트 (Given, When, Then) 활용  (0) 2020.06.23
    UICollectionView: Using Flow Layout  (0) 2020.06.21
    Label 줄바꿈 속성  (0) 2020.05.11
    [ios] Then  (1) 2020.04.17
    UINavigationController -1  (0) 2020.03.13
Designed by Tistory.