Льюис,
Вы не сможете анимировать какие-либо свойства ProgammaticSkin в Flex 3, потому что UIComponent выполняет скины, создавая экземпляр целого нового экземпляра вашего скина и затем устанавливая его свойство name. Затем, когда компоненту необходимо отобразить новое состояние, он создает другой новый экземпляр, устанавливает для своего свойства name что-то другое, делает старый скин невидимым и делает новый скин видимым. Таким образом, он «кэширует» скины вместо переключения состояний и перерисовки в UpdateDisplayList.
Теперь из-за этого вы не можете легко оживить любой рисунок самой кожи, однако, есть решение, хотя оно не совсем элегантно.
ProgammaticSkin расширяет FlexShape, поэтому вы не можете добавлять дочерние элементы в свой скин, но UIComponent ищет что-то, что реализует IProgrammaticSkin, поэтому вы можете создать свой собственный ProgrammaticSkin, который расширяет FlexSprite вместо FlexShape. Это позволяет добавить ребенка в свой скин. Если вы достаточно умны, вы можете синхронизировать переходы между различными кэшированными оболочками, чтобы сделать их анимируемыми.
Надеюсь, это поможет,
Джонатан