Problema de janela de preferências (uma vez aberto e fechado, não será aberto novamente)
-
03-07-2019 - |
Pergunta
O problema que tenho é que, quando a janela de preferências é aberta e fechada, ela não será aberta novamente. Por que isso está acontecendo e como isso pode ser corrigido?
EDIT: Acabei de notar também que tenho o mesmo problema com a janela principal.
A janela está sendo aberta através da barra de menus e está em um arquivo NIB separado.
Solução
Parece que você esqueceu de definir a saída 'Window' do seu controlador de janela (na ponta, o proprietário do arquivo) para apontar para a sua janela. Depois de conectar a saída da 'janela', o ShowWindow: o método do controlador da janela funcionará.
Outras dicas
Difícil dizer sem ver o código, mas uma possibilidade é que você tenha "liberação quando fechado" verificou a janela no construtor de interface, e você o está carregando uma vez, armazenando em cache, esperando poder fechar e reabrir sem carregar da ponta novamente.
Para qualquer outro noobs como eu, tendo esse problema :)
Não se esqueça de definir a classe proprietária do arquivo como a mesma da classe Controller, e você pode conectar a saída 'Window' ao painel.
Encontrei o mesmo problema enquanto trabalhava no exercício do capítulo 12 (arquivos NIB e NSWIDOWController) na programação de cacau de Aaron Hillegass para o Mac OS X Book. A resposta de Doug acima foi a solução - eu não tinha vinculado a saída da janela das preferências.
Eu cliquei com o botão direito do mouse no "proprietário do arquivo" no arquivo preferências.xib e depois o-button do mouse esquerdo arrastado da saída da janela para o painel (preferências). Uma vez feito e reconstruído, o aplicativo funcionou como pretendido. Eu poderia fechar e reabrir o painel de preferências personalizadas e minhas configurações anteriores ainda estavam lá (já que a janela de preferência não é descarregada apenas oculta).