문제가 있습니다. 내 맥 OS X 응용 프로그램에서 나는 메인 윈도우를 가지고있다. 이 창은 초기를 여는 중입니다. 나는 스토리 보드로 일하고있다. 하지만 사용자가 앱에 다시 로그인해야하는 경우가 있습니다. 내가 한 번이 창을 연 후모달로 다른 창을 연 다음 창을 닫을 수 없습니다.
private func openLogin() {
loginController = self.storyboard?.instantiateController(withIdentifier: "LoginController") as? LoginWindowController
guard let window = loginController?.window else {
return false
}
NSApp.runModal(for: window)
}
내가 메인 창을 닫을 수 없다 다시 닫습니다 (세션이 종료 될 때, 예를 들어)이이 코드와 모달 새로운 작은 창을 열 경우라면. 로그인 창이 열리지 않으면 문제가 없으며 MainWindow를 닫을 수 있습니다. 하지만 loginwindow를 한 번 열면 메인 윈도우를 닫을 수 없습니다. 닫기 버튼을 클릭 할 수는 있지만 아무 것도하지 않습니다.
그리고 나는 이것을 보장 할 수는 없지만 그 후에 어떤 창도 닫을 수는 없다고 생각합니다.
의견이 있으십니까?
도움 주셔서 감사합니다.
아르투르
문서에서 "stopModal, stopModalWithCode :, abortModal 메소드를 호출하여 모달 루프를 종료 할 수 있습니다."라고 말합니다. 모달 창을 닫을 때 그 일을합니까? –
예. 있습니다. 그 힌트를 가져 주셔서 감사합니다. 나는 대답에서 그 문제를 기술했다. –