이것은 나를 미치게합니다. 나는 메뉴를 통해 열어 내 애플 리케이션에 몇 가지 창문이 있습니다. 이제 새 창이 추가되었지만 windowDidLoad
은 호출되지 않습니다. 나는 그것의 applicationDidFinishLaunching
에windowDidLoad가 호출되지 않았습니다. (다시)
paymentWindowController.loadWindow()
을 발행 할 경우
fileprivate let paymentWindowController = PaymentWindowController(windowNibName:"PaymentWindow")
내 AppDelegate
의 선언입니다. 내 메뉴는이 PaymentWindowController
은/코코아/NSWindowController 새 파일을 통해 만들어 단지 발판이다
@IBAction func showPayments(_ sender: Any) {
paymentWindowController.window!.makeKeyAndOrderFront(self)
}
를 호출 클릭
:
class PaymentWindowController: NSWindowController {
override func windowDidLoad() {
super.windowDidLoad()
print("never been here")
}
}
XIB는 단지 하나의 창을 가지고 비계에서. (나는 XIB의 이름을 PaymentWindowController.xib
에서 PaymentWindow.xib
으로 바 꾸었습니다. 다른 창도 마찬가지였습니다.)
다른 모든 창은 동일한 방식으로 만들어져 예상대로 작동합니다. 하지만이 나쁜 녀석은 꼭 그래야만 효과가있을거야.
또한 프로젝트를 지우고 파생 데이터를 삭제했습니다.
xib 삭제, 프로젝트 정리 및 xib 재 작성을 시도해 보셨습니까? 때로는 사용자 지정 xibs와 같은 문제에 부딪치게되며 때로는 다시 빌드하는 것이 유일한 방법입니다. 아마 당신이 원했던 대답은 아니지만, 그럴 가치가 있습니다! 그 밖에도 비슷한 질문이 있으니 그 질문에 답을 얻을 수있을 것입니다. 나는 그것들로부터 답을 얻을 수 있지만, 그 시점에서 중복 될 것이다. 당신은 아마 그것을 모두 보았을 것입니다. 행운을 빕니다! – user3353890
@ user3353890 정말 머리카락을 당기는 ... 내 대답을 참조하십시오. –
당신이 그것을 알아 낸 것을 기쁘게 생각합니다! – user3353890