(mx.core.UITextField — это flash.text.TextField) возвращает false.Как это возможно?
-
20-09-2019 - |
Вопрос
Я просматриваю дочерние элементы 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