2017-07-24 65 views
0

我对Flex编程非常陌生。 我正在写一个示例程序。无法解析<mx:String>

<?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" minWidth="955" minHeight="600"> 
    <fx:Declarations> 
     <!-- Place non-visual elements (e.g., services, value objects) here --> 
    </fx:Declarations> 
    <mx:String id="message">Hello, World</mx:String> 
    <mx:Label text="{message}"/> 
</s:Application> 

但得到一个错误“无法解析到一个组件实现”

我有以下的疑问。 ,标签是指什么。 为什么我得到上述error.Please帮助

回答

2

此代码应工作:

<?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" minWidth="955" minHeight="600"> 
    <fx:Declarations> 
     <!-- Place non-visual elements (e.g., services, value objects) here --> 
     <fx:String id="message">Hello, World</fx:String> 
    </fx:Declarations> 
    <mx:Label text="{message}"/> 
</s:Application> 

我所做的是:

  1. 改变了你的字符串<fx:String>

  2. 将其移动到<fx:Declarations>标记中。

原因:

它看起来有点像你想使用Flex 4 SDK编译,并且混合了Flex 3和Flex的一点(四)妨碍开始与命名空间“S”是一个Flex 4 Spark组件。任何与命名空间“MX”是从Flex 3中

在Flex 3,你可以在代码中声明变量,旁边的任何可视化组件,它们都与“MX”命名空间中声明。在Flex 4中,他们改变了它,以便声明不是可视化组件(如变量)的东西需要放置在<fx:Declarations>标记中,这就是为什么存在注释“放置非可视元素(例如,服务,值对象)在这里“。他们还将这些非视觉元素的名称空间更改为“fx”

有一些解释Flex 3 equivalent of ''?