2008-09-02 49 views
0

我有一个ActionScript文件,它定义了一个我想在Flex应用程序中使用的类。如何导入Flex应用程序内部使用的类?

我已经在ActionScript文件中定义了一些自定义的控件,然后通过应用程序代码中导入它们:

 

<mx:Application 
    xmlns:mx="http://www.adobe.com/2006/mxml" 
    xmlns:scorecard="com.apterasoftware.scorecard.controls.*" 
... 
</mx:Application> 
 

但是这个代码是不是一个Flex组件,而这是进行数学例程,如何库我是否要导入这个类?

回答

5

您需要在脚本标记内导入类。

<mx:Application 
    xmlns:mx="http://www.adobe.com/2006/mxml"> 
    <mx:Script> 
    import com.apterasoftware.scorecard.controls.*; 
    // Other imports go here 

    // Functions and other code go here 
    </mx:Script> 

    <!-- Components and other MXML stuff go here --> 
    <mx:VBox> 
    <!-- Just a sample --> 
    </mx:VBox> 
</mx:Application> 

然后,您将能够在脚本标记的任何其他地方引用该类。根据类的写法,您可能无法在MXML中使用绑定,但可以定义自己的代码来处理该类。

名称空间声明仅用于导入其他MXML组件。使用导入语句在脚本块或另一个AS文件中导入AS类。

0

@Herms:为了澄清一点,当您要使用MXML实例化名称空间声明时,也可以使用名称空间声明来“导入”AS类。

例如,考虑让您完全使用AS编写的自定义视觉组件,比如com.apterasoftware.scorecard.controls.MathVisualizer。在MXML中使用它:

<mx:Application 
    xmlns:mx="http://www.adobe.com/2006/mxml" 
    xmlns:aptera="com.apterasoftware.scorecard.controls.*"> 

    <aptera:MathVisualizer width="400" height="300" /> 
</mx:Application>