iOS/Swift

[Swift] WebView의 백그라운드 컬러를 Clear로 변경 & Content Size 가져오는 방법

경푸 2022. 11. 9. 18:30
반응형

안녕하세요~

 

오늘은 WebView의 백그라운드 컬러를 조정하는 방법과

Content Size를 받아오는 방법에 대해서 간단하게 정리하려고 합니다 :  )

 

1. WebView의 백그라운드 컬러를 Clear로 설정하는 방법

webView에 접근해 backgroundColor를 clear로 조정하더라도 white로 보이길래 여러 방법을 찾아보다 아래와 같이 사용하면 가능하다는 것을 알았습니다.

webView.isOpaque = false
webView.backgroundColor = .clear

위와 같이 isOpaque의 값을 false로 변경하게 되면 원하는 대로 clear를 적용할 수 있게 됩니다.

 

2. WebView의 콘텐츠의 사이즈를 가지고 오는 방법

webView의 로드가 끝나고 나면 아래와 같이 document.body.scrollHeight을 통해 높이를 가지고 오고

레이아웃을 업데이트할 수 있습니다.

func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
    self.webView.evaluateJavaScript("document.readyState", completionHandler: { (complete, error) in
        if complete != nil {
            self.webView.evaluateJavaScript("document.body.scrollHeight", completionHandler: { (height, error) in
                self.containerHeight.constant = height as! CGFloat
            })
        }
    })
}
반응형