Я новичок в концепции делегатов и селекторов при использовании с уведомлениями. Итак, мой первый вопрос:
1) Допустим, у вас есть кнопка с делегатом, который реализует некоторый метод doWork
. Если вам нужна та же функциональность, что и в методе, можно ли просто вызывать этот метод? Я не знал, считалось ли это хорошей практикой кодирования и / или нужно ли вам это делать или делать что-то другое для получения такого типа функциональности. Например, если это нормально, архитектура?
2) Точно так же с NSNotificationCenter я вижу некоторый код, который публикует уведомление. Тогда есть метод HandleSegmentedControl:(NSNotification *)notification
. Если я хочу иметь эту функциональность вручную, но без нажатия элемента управления сегментами, можно ли просто взять эту функциональность из этого метода и поместить ее в новый метод, чтобы она выглядела так:
Оригинал:
- (void)HandleSegmentedControl:(NSNotification *)notification {
NSDictionary *dict = [userInfo notification];
// do stuff with the dictionary
}
Новое:
- (void)HandleSegmentedControl:(NSNotification *)notification {
NSDictionary *dict = [userInfo notification];
[self newMethod:dict];
}
- (void)newMethod:(NSDictionary *)dict {
// do stuff with the dictionary
}
- (void)myOtherMethodThatNeedsTheSameFunctionality {
NSDictionary *dict = // create some dictionary
[self newMethod:dict];
}
Извините, если это основные вопросы. Я не уверен, что лучшие практики для таких вещей, и хотел начать правильно. Спасибо.