(mx.core.UITextField — это flash.text.TextField) возвращает false.Как это возможно?

StackOverflow https://stackoverflow.com/questions/2273931

Вопрос

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

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

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

Это было полезно?

Решение 2

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

Другие советы

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

Подумайте об этом так

class TextField
{ 
}

class UITextField extends TextField
{
}

Вам нужно использовать getQualifiedSuperclassName() для получения TextField

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top