Нераспознанная ошибка селектора отправлена ​​сразу после успешного вызова селектора - PullRequest
3 голосов
/ 23 октября 2011

Эта ошибка сбивает меня с толку, но здесь идет:

Я пытался настроить IBAction, чтобы он работал при касании внутри UIButton. По какой-то причине это не сработало и не дало мне никаких ошибок GDB. Время от времени в нем упоминается неопознанный селектор. Я проверил, чтобы убедиться, что владелец моего Файла был правильным классом, и все было проверено, и это было так, поэтому я запустил его снова и все еще ничего.

Я подумал, что это может быть проблема с Интерфейсным Разработчиком, поэтому я использовал addTarget: на кнопке установил цель как self, а селектор - селектор метода, который я хотел вызвать, и все еще получил нераспознанную ошибку селектора. Чтобы проверить, что селектор действительно существует, я запустил [self executeSelector:] на селекторе нужного мне метода, и он сработал. Так что в основном сейчас у меня есть это:

- (void)viewDidLoad {
    [super viewDidLoad];

    [self performSelector:@selector(hi)];

    [_backButton addTarget:self action:@selector(hi) forControlEvents:UIControlEventTouchUpInside];
}

- (void)hi {
    NSLog(@"HI");
}

Селектор выполнения работает отлично и регистрирует "HI". Вот кикер, когда я подправляю _backButton, он дает мне нераспознанную ошибку селектора, хотя я только что назвал ее, и она сработала:

2011-10-22 19:54:40.824 VideoGif[396:707] -[NSKeyValueObservance hi]: unrecognized selector sent to instance 0x590690
2011-10-22 19:54:40.831 VideoGif[396:707] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSKeyValueObservance hi]: unrecognized selector sent to instance 0x590690'

Я сделал снимки экрана с пером и файлом реализации, который можно посмотреть здесь: http://imgur.com/a/q2a6N

Кто-нибудь знает, что происходит?

1 Ответ

1 голос
/ 23 октября 2011

Проблема, вероятно, возникает из-за того, что ваш экземпляр CaptionEditorViewController по какой-то причине освобождается, на что указывают случайные классы, выбрасывающие исключения "нераспознанный селектор"

...