Почему этот UIViewController не получает мое NSNotification - PullRequest
0 голосов
/ 20 августа 2011

У меня проблемы с получением viewController для получения уведомлений от NSNotificationCenter. Куда я иду не так?

В моем viewController я определил:

- (id)init {

    [[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(receiveEvent:)
                                                 name:UIApplicationWillResignActiveNotification
                                               object:nil];


    return self;
}


- (void)receiveEvent:(NSNotification *)notification {
    counter = counter + 1;
    NSString *string = [NSString stringWithFormat:@"%d", counter];  
    vocabword.text = string;
}

Но текст не обновляется: (

Ответы [ 2 ]

1 голос
/ 20 августа 2011

Ваш метод init вызывается? (и почему ты не называешь там [супер инициата]?)

В зависимости от того, как вы создаете свой viewController, сам метод init может не вызываться. Скорее, можно использовать другой инициализатор пыток, такой как initWithCoder: если он загружается из xib.

Обычно я регистрируюсь для уведомлений в viewDidLoad и отменяю регистрацию в viewDidUnload. Есть ли какая-то причина, по которой вам нужно было бы получать уведомление, если ваш просмотр по какой-то причине был выгружен (например, слишком много памяти?)

1 голос
/ 20 августа 2011

Ничто в опубликованном вами коде, очевидно, не так.Это, наверное, какая-то другая проблема.Вы получаете сообщение журнала?Вы уверены, что ваш класс создается?Вы действительно увольняетесь с подачи заявления?

...