В чем разница между типами объектов mx / fx / s во Flex 4? - PullRequest
3 голосов
/ 21 декабря 2009

Flex4 предоставляет следующие пространства имен:

xmlns:fx="http://ns.adobe.com/mxml/2009" 
xmlns:s="library://ns.adobe.com/flex/spark" 
xmlns:mx="library://ns.adobe.com/flex/halo"

Какая разница? Какое пространство имен обеспечивает какую функцию? Где я могу найти информацию об этом?

1 Ответ

9 голосов
/ 21 декабря 2009

Пространства имен позволяют вам указать компилятору, где искать файлы / классы, на которые вы ссылаетесь в своем mxml.

Существует два различных типа пространств имен, которые используются во Flex 4. Языковое пространство имен и пространство имен компонента. пространство имен http: //ns.adobe.com/mxml/2009 указывает, какая версия языка mxml используется. Это включает в себя такие вещи, как тег сценария и тег привязки, а также новые теги, такие как объявления и private.

Другие 2 пространства имен, на которые вы ссылаетесь выше, являются пространствами имен компонентов. Это ссылки на конкретные классы ActionScript, которые составляют компоненты пользовательского интерфейса, которые вы будете использовать в своем приложении. Набор компонентов / flex / spark - это новые компоненты flex 4, которые имеют отдельные оболочки и реализацию компонентов. Набор / flex / halo - это компоненты, которые существуют в наборе flex 3. Будьте осторожны, хотя / flex / halo был переименован в / flex / mx в новых ночных сборках.

В Flex 3 был доступен только один язык и только один набор компонентов, поэтому они объединили определения для всех вместе в одном файле. Таким образом, хотя технические элементы под капотом не изменились, способ, которым Adobe показывает их (через несколько пространств имен), изменился. Поначалу это может показаться более сложным, но имейте в виду, что при работе с флексом вы всегда создавали пространства имен xml для всех компонентов представления в mxml. Так что теперь вы играете на том же уровне, что и основной фреймворк, и это здорово. Кроме того, во Flex 4 есть несколько языков и наборов компонентов, которые можно использовать, поэтому было бы невозможно создать то сопоставление «один к одному», которое существовало во Flex 3.

Для получения дополнительной информации по этой теме, пожалуйста, обратитесь к документации Adobe по этому вопросу: http://opensource.adobe.com/wiki/display/flexsdk/MXML+2009

НТН,

сим

...