2011-05-26 42 views
2

我想将Flex 4项目向后移植到Flex 3,并且我需要移动MXML中<fx:Declarations>块中映射的东西。 Flex 3是否有类似的东西?自从我完成Flex 3以来已经有一段时间了。Flex 3等效于'<fx:声明>'?

+1

出于好奇,为什么要往下移? – Ben 2011-05-26 04:02:39

+0

Flex 4与Flex 3向后兼容。为什么需要切换SDK或重写整个应用程序,即您的目标是什么? – 2011-05-26 04:59:58

+0

简单的回答:不要这样做:P – 2011-05-26 12:59:53

回答

7

有一个在Flex 3中没有相应的可以申报的东西你旁边的其他组件内的组件。 difference in Flex 4使得视觉和非视觉项目(包括效果,验证器,格式化器,数据声明和RPC类)更加清晰。

例如,在Flex 4中你可以这样做:

<?xml version="1.0" encoding="utf-8"?> 
<s:Application 
    xmlns:fx="http://ns.adobe.com/mxml/2009" 
    xmlns:s="library://ns.adobe.com/flex/spark" 
    xmlns:mx="library://ns.adobe.com/flex/mx"> 

    <fx:Declarations> 
     <fx:String>Hello, world!</fx:String> 
    </fx:Declarations> 

    <!-- Component defintions --> 

</s:Application> 

但在Flex 3的,你可以这样做:

<?xml version="1.0" encoding="utf-8"?> 
<mx:Application 
    xmlns:mx="http://www.adobe.com/2006/mxml"> 

    <mx:String>blah</mx:String> 

    <!-- Component defintions --> 

</mx:Application> 

你可以,但是,定义变量和任何其他Flex 3和4中的<mx:Script><fx:Script>标签中的声明(视觉与否)。

如果您遇到其他更改,请在Adobe网站上搜索有关migrating from flex 3 to flex 4的信息,以查看您可能需要做出哪些其他更改。

0

没有。旧版本的框架将假设任何非可视元素都是“减速”。添加了减速标签,以便可以在Spark皮肤中使用MXML定义组件工厂。

编辑

但是,如果我没记错的话,他们确实需要在顶层MXML标签去。我可能是错的,但...

1

没有必要单独定义和关闭过程不支持

<fx:Declarations> 

</fx:Declarations> 
在Flex 3

在声明标记

你定义非可视化标签,如效果,服务标签等。但Flex 3 SDK中没有可视标签的确切标签。

1

开始以root应用tag.There是flex3不需要<fx:declaration>刚刚分配根标签

<?xml version="1.0" encoding="utf-8"?> 
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" 
    layout="vertical" 
    backgroundColor="#000000" 
    backgroundGradientAlphas="[0.0,0.0]" 
    paddingTop="30" 
    applicationComplete="init()" 
    preloader="com.nickkuh.preload.Preloader" 
    viewSourceURL="srcview/index.html"> 

    <mx:Script> 
     <![CDATA[ 
      /*script area*/ 
     ]]> 
    </mx:Script> 

    <!-- your controls can define here --> 

    <mx:Panel id="appPanel" visible="false" width="600" height="500" showEffect="{fadeIn}" /> 

</mx:Application>