2013-08-14 3 views
1

У меня есть UIImageView (ASImageView является подклассом UIImageView) объявлена ​​в заголовке:
@property (strong, nonatomic) IBOutlet ASImageView *imgView;
Внутри моего подкласса ASImageView у меня есть некоторые методы, и, в целях доступности, я хотел бы знать имя переменной - в этом случае imgView.
Есть ли способ?Get IBOutlet имя переменной внутри него

+0

Вы облагаете недвижимость ?? или вы спрашиваете описание участника? распечатать описание он даст текст, заголовок, кадр – NHS

+0

@NHS - я хочу получить имя переменной; как уже упоминалось, в приведенном выше случае я хотел бы получить 'imgView' – tagyro

+0

Переменные идентифицируются по их адресам не по именам. Так что 'XCode' или даже любая форма пластины не знают имена переменных. Имя переменных предназначено для идентификации объекта, поскольку вы не можете идентифицировать адрес. – TheTiger

ответ

1

В большинстве языков программирования объекты не имеют имен. Просто потому, что какая-то переменная imgView ссылается на ваш объект, не означает, что ваш объект «называется» imgView.

И в большинстве языков переменных на языке C имена вообще не представлены в конечных исполняемых файлах (кроме имен внешних символов).

Так короткий ответ, что нет никакого способа, чтобы добраться до этой информации ..

1

Variables are identify by their addresses not by names. So XCode or even any plate form don't know the names of variables. Variables name are for you to identify the object as you can't identify the address.

Вы можете получить только object «s class.
Пример:

BOOL result = [imgView isMemberOfClass:[ASImageView class]]; 

isMemberOfClass: возвращает логическое значение, указывающее, является ли приемник является экземпляром данного класса.

BOOL result = [imgView isKindOfClass:[ASImageView class]]; 

isKindOfClass: возвращает логическое значение, указывающее, является ли получатель является экземпляром данного класса или экземпляр любого класса, который наследует от этого класса.

Смежные вопросы