Что такое владелец файла и первый ответчик в iOS - Xcode? - PullRequest
88 голосов
/ 22 сентября 2010

Что такое владелец файла и первый ответчик в iOS - Xcode?

1 Ответ

168 голосов
/ 22 сентября 2010

Владелец файла - это экземплярный runtime объект, которому принадлежит содержимое вашего пера и его выходы / действия при загрузке пера.Это может быть экземпляр любого класса, который вам нравится - взгляните на вкладку идентификации палитры инструментов.

Владелец файла - это основная связь между кодом приложения и содержимым файла пера.

Например, предположим, что у вас есть подкласс UIViewController с IBOutlet для UILabel.В конструкторе интерфейса владелец файла будет установлен в тот же класс, что и ваш UIViewController.Когда ваше перо загружается во время выполнения, привязки розеток и действий, определенных в вашем кончике, привязываются к экземпляру вашего контроллера представления, поскольку ваш контроллер представления является владельцем.

Перья загружаются с использованием:

[[NSBundle mainBundle] loadNibNamed:@"NibName" owner:nil options:nil];

Параметр владельца особенно важен.Это исполняемый экземпляр класса, которому принадлежит содержимое (выходы, действия и объекты) загружаемого пера.

Надеюсь, это понятно.Чтобы увидеть это на работе, создайте новый проект iPhone с контроллером представления.Откройте файл Nib и посмотрите на вкладку идентификации.

Первый респондент - это просто первый объект в цепочке респондентов, который может отвечать на события.Цепочка респондента - это коллекция времени выполнения (или, точнее, иерархия) объектов, которые могут реагировать на событие.Например, предположим, что у вас есть окно с представлением, и в этом представлении есть текстовое поле.

Если это текстовое поле имеет фокус, оно называется первым респондентом в цепочке.Поэтому, если вы отправите сообщение первому респонденту, оно будет сначала отправлено в текстовое поле.Если текстовое поле не может обработать сообщение, оно будет отправлено следующему респонденту .И следующее.И следующее, пока вы не дойдете до конца цепочки респондента или пока что-нибудь не поглотит событие (iirc).

Цепочка респондента стоит прочитать - обратитесь к документации Apple для получения дополнительной информации.

...