Я пытаюсь изменить значение метки здесь.Почему вызов setStringValue работает в viewDidLoad и viewDidAppear, но не в других методах?
Может кто-нибудь объяснить мне, почему метод следующий вызов:
[_detailLabel setStringValue:@"this is new label value"];
работает, если я сделать вызов из viewDidLoad и viewDidAppear методов, но он не работает в методе, который я создал:
-(void)changeLabelValue : (NSString *) newVal {
[_detailLabel setStringValue:@"this is new label value"];
NSLog (@"Hello from changeLabelValue method");
}
Пожалуйста, обратите внимание, что, когда я называю этот метод из любого из моего кода, отображается сообщение NSLog но значение метки не меняется ...
Любая помощь глубоко оценен.
Указывая мне на ресурс, где я могу узнать больше об этом предмете, вы также поймете трюк и будете также глубоко оценены.
С уважением, Джон.
Когда вы называете 'changeLabelValue:'? Это после того, как контроллер просмотра был отображен или раньше? – rmaddy
Я звонил ему из watchValueForKeyPath, и это не сработало. Теперь, когда я вызываю это из viewDidLoad, работает. Пожалуйста, введите свой комментарий в качестве ответа, чтобы я мог его принять. – user2417624