Одной из причин этой ошибки является то, что пространство имен xml по умолчанию для компонента не совпадает с пакетом, в котором находится компонент.
Проверьте, чтобы убедиться, что запись xmlns по умолчанию в определении компонентасовпадает с пакетом.
Например:
Если у вас есть компонент MyControl.mxml , расположенный в пакете com.company.components.controls
Открывающий тег mxml может выглядеть примерно так:
<MyControl xmlns:mx="http://www.adobe.com/2006/mxml"
xmlns:util="com.company.components.util.*"
xmlns:components="com.company.components.*"
xmlns="com.company.components.controls.*">
Обратите внимание, как запись xmlns по умолчанию указывает на один и тот же пакет.
Почемуэто происходит:
Часто случается, что после рефакторинга класса MXML путем его перемещения в новый пакет вы получите правильное, но не правильное определение mxml.
Например, произнеситеЯ выполняю рефакторинг и перемещаю MyControl.mxml из пакета com.company.components в пакет com.company.components.controls .Определения xmlns не будут обновляться, поэтому они будут выглядеть следующим образом:
<controls:MyControl xmlns:mx="http://www.adobe.com/2006/mxml"
xmlns:util="com.company.components.util.*"
xmlns="com.company.components.*"
xmlns:controls="com.company.components.controls.*">
Обратите внимание, что пространство имен по умолчанию все еще указывает на пакет com.company.components и тег mxml MyControl должен начинаться с префикса пространства имен controls это признак проблемы.
Теперь вот ловушка;Это технически правильно и часто будет работать.Причина в том, что он действителен и все компоненты могут быть найдены в определенных местах xmlns.
Проблема возникает, когда вы пытаетесь использовать компонент, который, как ожидается, будет найден платформой или родительским компонентом в пространстве имен по умолчанию.Хорошим примером этого является и другие подкомпоненты родительского компонента mxml, которые вы, возможно, расширяете.
Чтобы исправить это, вы должны изменить тег mxml и пространства имен так, чтобы пространство имен по умолчанию было таким жекак текущий пакет.(Как в первом примере)