Есть несколько вещей, которые вы могли бы здесь сделать, но простейшим было бы, вероятно, переписать ваш код просто чуть-чуть.
NSString* title = @"";
if ([view respondsToSelector:@selector(title)]) {
title = [(id)view title];
}
Приведение переменной представления к id перед отправкой сообщения должно гарантировать, чтоПока метод с именем -title
существует где-либо, он будет молчать.
Другой вариант:
NSString* title = @"";
if ([view respondsToSelector:@selector(title)]) {
title = [view performSelector:@selector(title)];
}
Это немного отличается от вышеизложенного тем, что он непотребовать, чтобы файл «увидел» любой метод с именем title;но это немного более многословно.
Редактировать: Я знаю, что ни один из этих подходов на самом деле не поворачивает предупреждения на какое-то время, а скорее подавляет их.
Подавление, если сделано правильно, по крайней мере, обычно лучше, чем просто игнорирование.