내보기 컨트롤러에 WKWebView가 표시됩니다. 내 코드는 웹 페이지 내부에서 통보받을 수 있습니다 메시지 처리기, 멋진 웹 키트 기능 설치 :WKWebView로 인해 내보기 컨트롤러가 누출됩니다.
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(animated)
let url = // ...
self.wv.loadRequest(NSURLRequest(URL:url))
self.wv.configuration.userContentController.addScriptMessageHandler(
self, name: "dummy")
}
func userContentController(userContentController: WKUserContentController,
didReceiveScriptMessage message: WKScriptMessage) {
// ...
}
지금까지 너무 좋아,하지만 지금은 내보기 컨트롤러가 누출되는 것을 발견했습니다 -시 이 해제 될 예정이다, 그것은되지 않습니다 :
deinit {
println("dealloc") // never called
}
단순히 메시지 핸들러로 자신을 설치하는 것은이주기 때문에 누수를 유지하는 원인이 나타납니다!
깜짝 높지 upvote에 있습니다. 큰 도움. – Nick
어떤 종류의 영혼이라도 이것을 objectivec 동등한 코드로 번역 할 수 있습니까? – mkto
@mkto - 구현의 obj-c 버전을 게시했습니다. – johan