Глядя на это изображение, вы можете увидеть, что UIView загружается из кончика пера имеет «Владелец файла»Использование NSSet/allTargets для получения xib так называемого «владельца файла»?
Обратите внимание на XIb, Apple назвала что-то «Владелец Файла».
Итак, откройте Xcode, откройте любой XIB, посмотрите на заполнители и смотреть прямо внизу, чтобы увидеть:
"Владелец файла".
В этом конкретном примере «владелец xib-файла» является классом LoginScreen.
Таким образом, во время выполнения для конкретной вещи, созданной этим XIb, то «был-XIB-файл-владелец» (чеканить фразу) будет фактически:
Это будет: некоторые конкретный экземпляр класса LoginScreen.
Теперь во время выполнения. Очевидно, что в UIView, с каждым UIButton, вы можете просто позвонить
[self.someButton sendActionsForControlEvents:UIControlEventTouchUpInside ];
, и вы получите действительно «перейти к», именно:
Вы идете: что экземпляр класса LoginScreen.
{Примечание - КУРС, UIButton может быть направлен в любом месте. Я спрашиваю о том случае, когда мы знаем, на самом деле UIButton действительно указывающего на «был-XIB-файл-владелец» UIButton.}
В самом деле, метод allTargets
действительно возвратит эту цель (в этом случае некоторые экземпляра класса LoginScreen) как часть мишени (S N) он возвращается, и в самом деле селектор (ов), и т.д. и т.п.
Я не достаточно хорошо, чтобы написать код для allTargets , NSSet и т. Д.
Может ли кто-нибудь показать мне, как извлечь, используя allTargets и некоторый компьютерный код, экземпляр класса LoginScr een? т.е. исполняемый экземпляр «has-xib-file-owner», видимый в xib? Приветствия.
Позже:
причудливо, ответ на этот вопрос, по существу, и, как правило:
[self.allTargets anyObject]
так, если он создан из XIb там только будет быть единственным, и это именно то, что описано выше. Повторить: КУРСЫ, UIButton можно было указывать В ЛЮБОЕ ВРЕМЯ. Я спрашиваю о случае, когда мы знаем для факта, что UIButton действительно указывает на «has-xib-file-owner» UIButton.
В этом («нормальном») случае ответ действительно просто удивительно прост - [self.allTargets anyObject].
Зачем вам нужен владелец кнопки? – giorashc
Вы имеете в виду владельца или контейнер? –
есть N целей и 1 супервизор ... 0 владельцев –