Модальное окно приложения Mac OS X не закрывается - PullRequest
2 голосов
/ 18 сентября 2011

Я пытался отправить заявку в магазин Apple App Store, и рецензент утверждает, что мое начальное окно уведомления (которое является модальным) не исчезает, когда они нажимают кнопку подтверждения.Теперь я протестировал его на нескольких машинах (даже чистых установках 10.7.1) и не видел такого поведения (оно прекрасно работает для меня).

Мой код для отображения этого окна:

- (IBAction) doAlert:(id)sender {
    if(self.alertVC == nil) {
        self.alertVC = [[[AlertVC alloc] initWithWindowNibName:@"AlertVC"] autorelease];
    }
    [NSApp runModalForWindow:self.alertVC.window];
}

и код, который я закрываю, выглядит следующим образом:

-(IBAction)closeWindow:(id)sender {
    [self close];
    [NSApp stopModal];
}

У кого-нибудь есть идеи, почему это работает на 100% во всех моих тестах, но для тестеров Apple окно не исчезает?(Он остается открытым на переднем плане, даже если приложение продолжается, и они могут снова взаимодействовать с приложением в обычном режиме.

1 Ответ

2 голосов
/ 10 сентября 2012

Единственное, что я вижу, что может вызвать ошибку, это то, что вы закрываете не окно, а контроллер (или кто-то еще предоставляет метод closeWindow). Если closeWindow - это метод того же класса, что и doAlert, код долженПохоже:

-(IBAction)closeWindow:(id)sender {
    [self.alertVC.window performClose:self];
    [NSApp stopModal];
}

Я знаю, что ответ опоздал, и вы, вероятно, нашли решение, но я предоставил ответ для всех тех, кто спотыкается об фрагменте и задается вопросом, почему это происходит и с ними.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...