(mx.core.UITextField - flash.text.TextField) возвращает false. Как это возможно? - PullRequest
1 голос
/ 16 февраля 2010

Я перебираю потомки SWF-файла, загруженного с помощью flash.display.Loader, в проекте только для AS под FlashDevelop.

Вызов flash.utils.getQualifiedClassName (obj) для объекта возвращает "mx.core :: UITextField ", и хотя он является подклассом flash.text.TextField, Calling (obj is flash.text.TextField) возвращает false.

Есть какие-нибудь идеи по этому поводу?Я что-то не так делаю?

Ответы [ 2 ]

0 голосов
/ 16 февраля 2010

Ну, как оказалось, проблема была (как обычно) с моим собственным кодом, а не с оператором IS.В следующий раз я постараюсь быть более осторожным и перепроверить мой код перед публикацией. Извините за рассылку спама ...

0 голосов
/ 16 февраля 2010

Вы запрашиваете имя класса с помощью flash.utils.getQualifiedClassName (obj). Класс UITextField расширяет класс flash.text.TextField. Таким образом, класс UITextField, а не TextField.

Думай об этом так

class TextField
{ 
}

class UITextField extends TextField
{
}

Вам нужно использовать getQualifiedSuperclassName (), чтобы получить TextField

...