1
我建立一個自定義對話框的應用程序中,我會想使用閉包當用戶點擊的東西,是所謂的,有點像這樣:DEINIT之前UITapGestureRecognizer函數被調用
var modal = ModalDialog(title: "modal title", buttonClick: {() -> Void in
println("clicked")
})
modal.show()
所以我做了一個叫ModalDialog類中,我有一個UITapGestureRecognizer像這樣:
var modalTap: UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: Selector("buttonClickAction:"))
modalView.addGestureRecognizer(modalTap)
我的問題是,由於ARC,當輕敲實際上是公認的,它試圖調用buttonClickAction:
類是已經deinitialised和應用程序崩潰。
我會如何去保持ARC從初始化模態直到我明確地告訴它如此做?
這是我不知道該怎麼辦,看過蘋果書,它對我沒有意義。 ModalDialog在視圖控制器類中被調入,但我如何保持對它的強烈引用? – 2014-10-10 10:17:32
編輯答案 – 2014-10-10 10:24:21