Это на самом деле фатальный недостаток в среде Flex в отношении стиля. Когда Flex получает значение стиля для значка, он предполагает, что он имеет тип Class
и что созданный объект будет иметь тип DisplayObject
(или производный). Это тривиальное изменение в коде (которое классы, такие как mx:Image
, делают для своего свойства источника), чтобы проверить, имеет ли значение стиля тип DisplayObject
, и если это так, просто пропустите шаг построения, который он выполняет в настоящее время.
Решение Бена является наилучшим из возможных, если вы не хотите менять исходный код платформы Flex. Лично я заканчиваю тем, что исправляю определенные компоненты, чтобы принять экземпляры DisplayObjects
вместо Classes.
Некоторые компоненты более трудны, чем другие, для исправления.
Даг Маккьюн объясняет, как обезьяна исправить патч Flex Framework.