Извините, если это дубликат. Если это так, я благодарен за ссылку и рад удалить свой вопрос. Однако я не нашел ответа среди тонны результатов поиска. Это не обычный случай нераспознанных селекторов. Селектор нулевой. И кидается на эту самую строчку:
вернуть self.topViewController;
Эта строка встроена в:
@implementation UINavigationController (JTRevealSidebarV2)
- (UIViewController *)selectedViewController {
return self.topViewController;
}
@end
Как видите, это попытка расширить UINavigationController
. Вы могли заметить, что мой код основан на этом турориале: https://github.com/mystcolor/JTRevealSidebarDemo (На основе демо версии 2, если кому интересно).
Насколько я заметил, я еще не внес никаких изменений в структуру mystycolor. Особенно не UIViewController+JTRevealSidebarV2.h
и не .m
. До сих пор я внес изменения только в один из двух представленных контроллеров представления. Те, которые содержат содержимое, а не логику навигации.
Видимо вызывается метод. Следовательно, категория должна была использоваться каким-то правильным образом? И все, что там использует mystycolor, он вызывает хорошо документированный метод и возвращает его значение. Поскольку это из учебника, который является чужим кодом, не спрашивайте меня, почему topViewController не вызывается напрямую. Я попробую это дальше, конечно, но даже если это поможет, я все равно буду куриусом о том, что здесь пошло не так.
Просто из любопытства я изменил это выражение на return [self topViewController];
, но неудивительно, что изменений не произошло.
Я рад предоставить больше кода, но не знаю, какой фрагмент может быть вам интересен, чтобы помочь.