728x90
Issue
이슈 내용은 웹뷰에서 로드된 웹페이지에서 문서 내부에 첨부된 URL 링크를 클릭 시 링크가 동작하지 않는 이슈였다.
Root cause
찾아보니 링크가 걸린 HTML 태그에 target="_blank" 라는 태그가 포함되어 있으면 문제가 생기는 거 였다.
Solution
일단 target="_blank"를 안 쓰는게 가장 효과적이지만 앱 내부에서도 WKUIDelegate의 아래 메서드를 구현하면 동작하게 만들 수 있다.
func webView(webView: WKWebView!, createWebViewWithConfiguration configuration: WKWebViewConfiguration!, forNavigationAction navigationAction: WKNavigationAction!, windowFeatures: WKWindowFeatures!) -> WKWebView! {
if navigationAction.targetFrame == nil {
webView.loadRequest(navigationAction.request)
}
return nil
}
대충 targetFrame이 없으면 다시 호출한다는 뜻인 것 같은데 웹뷰 프레임워크를 다뤄본 적이 거의 없어서 정확히 어떤 로직인지는 모르겠다
728x90
'iOS > 이슈' 카테고리의 다른 글
[iOS Issue] Lottie 리소스 용량 관련 이슈 (1) | 2022.04.16 |
---|---|
[iOS Issue] iOS15에서 소리만 실행되는 notification은 실행 불가 (0) | 2022.04.09 |
[iOS Issue] UIView.animate에서 constraint 변경 동작 안함 (0) | 2022.03.05 |
[iOS Issue] Core data: Failed to load model (0) | 2022.02.19 |
[iOS Issue] Http URL 사용 시 Error Domain=NSCocoaErrorDomain Code=256 (0) | 2022.02.19 |
댓글