У меня есть 2 UIViewControllers (A, B). A задается как делегат для B, а затем представлен B. Протокол устанавливается в заголовке Б:Objective-C делегат или self является морфинговыми классами
@protocol BDelegate <NSObject>
- (IBAction)finishOrder:(id)sender;
@end
Делегат свойство объявлено:
@property (nonatomic, assign) id<BDelegate> delegate;
А установлена B.delegate = сам; Затем на нажатие кнопки B вызывает:
if (self.delegate) {
[self.delegate finishOrder:nil];
}
Однако на первый прогон lldb дает мне:
-[UITextInteractionAssistant finishOrder:]: unrecognized selector sent to instance
второго запуска:
-[NSInvocation delegate]: unrecognized selector sent to instance
третьего запуска:
-[__NSCFDictionary delegate]: unrecognized selector sent to instance
следующий пробег:
-[UITextTapRecognizer finishOrder:]: unrecognized selector sent to instance
Так ... нет код изменились, но сам изменились от А до NSInvocation и __NSCFDictionary и делегата B (самого А) не меняются на UITextInteractionAssistant и UITextTapRecognizer ... никогда ничего подобного не видели. Есть идеи? Благодаря!
Все они выглядят как UITextStorageDelegate с внутренними проблемами – CodaFi
Я даже не слышал о UITextStorageDelegate lol. Это простая пользовательская система делегатов. –
Это внутренний делегат, используемый всеми редактируемыми текстовыми элементами управления в UIKit. – CodaFi