Swift WKWebView 페이지 로드에 관련된 질문입니다.
조회수 3003회
지금 WKWebView를 이용한 하이브리드 앱을 만들고 있습니다. 문제가 하나 생겼는데요 웹뷰에서 페이지를 로드할때 url 뒤에 #이 붙으면 로드를 제대로 못하네요.
func webView(webView: WKWebView, decidePolicyForNavigationAction navigationAction: WKNavigationAction, decisionHandler: (WKNavigationActionPolicy) -> Void)
이 메소드에서 처리해야 할거 같은데 이것저것 해봐도 안되고 어떻게 해야될지 잘 모르겠습니다. 도와주세요ㅠㅠ
-
(•́ ✖ •̀)
알 수 없는 사용자 - 〉
1 답변
-
Single view application으로 프로젝트를 생성하고 아래 코드와 같이 ViewController를 구성하니 #이 잘 동작합니다.
urlWithSharp에 들어있는 url의 #뒤를 one, two,three등으로 변경하면서 실행해 봤어요.
import UIKit import WebKit class ViewController: UIViewController,WKNavigationDelegate { var webView : WKWebView! override func viewDidLoad() { super.viewDidLoad() let urlWithSharp = "http://www.owlcarousel.owlgraphic.com/demos/urlhashnav.html#three" let url = NSURL(string: urlWithSharp) let request = NSURLRequest(URL: url!) // init and load request in webview. webView = WKWebView(frame: self.view.frame) webView.navigationDelegate = self webView.loadRequest(request) self.view.addSubview(webView) self.view.sendSubviewToBack(webView) } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } }
- 기본상태에서 잘 되는걸 보면 제가 메소드에 추가한게 문제가 되었나보네요. 답변 감사드립니다. 그리고 궁금한게 있는데 소스에서 self.view.sendSubviewToBack(webView) 이 함수는 왜 호출해주는건가요? 알 수 없는 사용자 2016.9.5 09:43
댓글 입력