Какие уведомления испускают объекты?

Я пытаюсь получать уведомления от объектов в эскизе. Я могу выбрать классы кликов, чтобы увидеть списки функций и свойств. Где я могу найти список (помимо источника) или документацию уведомлений, которые испускают объекты?

В частности, я хотел бы поймать событие TUCHDOWN с помощью кнопки, используя синтаксис [self listenFor...] из моего C4Workspace.m.


c4
person Adam Tindale    schedule 07.06.2013    source источник


Ответы (1)


Как правило, нативные объекты не отправляют уведомления. Список объектов C4, которые их испускают, см. в разделах 2.1 и 2.2 следующего документа:

http://c4ios.com/workshops/vivo/interaction.php

Кнопки и другие элементы пользовательского интерфейса действуют как объекты из UIKit. Это означает, что они не создают TOUCHDOWN уведомлений при прикосновении к ним. На самом деле у них есть механизм, который позволяет им отправлять «действия» или «сообщения» другим объектам при возникновении различных управляющих событий.

Вместо следующего:

[self listenFor:@"TOUCHDOWN" fromObject:aButton andRunMethod:@"someMethod"];

Вы бы сделали следующее:

[button runMethod:@"aMethod" target:self forEvent:TOUCHDOWN];

Что позволяет привязать aMethod к целевому объекту (здесь это self), который будет отправляться всякий раз, когда кнопка получает событие TOUCHDOWN.

Для UI-элементов существует множество различных управляющих событий:

  • TOUCHDOWN
  • TOUCHDOWNDRAGINSIDE
  • TOUCHDOWNDRAGOUTSIDE
  • TOUCHDOWNDRAGENTER
  • TOUCHDOWNDRAGEXIT
  • TOUCHUPINSIDE
  • TOUCHUPOUTSIDE
  • TOUCHCANCEL
  • VALUECHANGED

Это всего лишь краткий список событий управления, которые вы можете использовать в сочетании с элементами пользовательского интерфейса.

person C4 - Travis    schedule 09.06.2013