Подкласс NSObject как цель в addEventListener операторе

При установке метода вызова кнопки или добавлении слушателя события в цели-c, каждый обычно ставит цель к сам. Однако у меня есть подкласс NSObject именованный CALLS, отдельный из основного файла. Этот подкласс имеет a void названный METHOD_NAME который должен быть выполнен.

Первый вопрос, был бы пустота быть + (пустой) METHOD_NAME

или

- (пустой) METHOD_NAME в подклассе.

Следующее - то, как я поставил бы цель addEventListener использовать подкласс NSObject и назовите метод в нем. Я сделал бы

цель: [Класс ВЫЗОВОВ];

или создайте экземпляр подкласса NSObject (вызовы) и затем передайте это?

1
задан Felixyz 27 July 2010 в 22:46
поделиться

1 ответ

  • «ЗВОНКИ» и «ИМЯ МЕТОДА» - плохие названия для класс и метод. Старайтесь следовать соглашениям Objective-C. Так как вы не являетесь «nonono», вы можете назвать свой класс чем-то вроде NNEventListener и, например, методом buttonTapped .

  • Первый вопрос: на самом деле это не имеет значения. Могут использоваться как методы класса (+), так и методы экземпляра. Однако было бы очень необычно не использовать метод экземпляра для прослушивания событий пользовательского интерфейса, поэтому ответ - используйте - (void) buttonTapped

  • Второй вопрос : Я не думаю, что во всем Какао есть метод под названием addEventListener . Откуда вы об этом узнали? Вы раньше использовали веб-фреймворки для создания приложений?

Чтобы добавить цель к кнопке (или любому другому UIControl ), используйте -addTarget: action: forControlEvents: Чтобы получить ссылку на метод, который вы хотите вызвать, используйте специальную директиву @selector , например:

[aButton addTarget:anObject action:@selector(buttonTapped) forControlEvents:UIControlEventTouchUpInside];

aButton - ваша кнопка anObject - любой объект. self - это просто объект, которому принадлежит метод.Вы можете сдать любой объект на всех buttonTapped - имя метода, который должен вызываться при нажатии кнопки

2
ответ дан 2 September 2019 в 22:40
поделиться