Actionscript:使用变量来完成.as

时间:2013-04-05 14:08:03

标签: actionscript-3 variables text actionscript instance

我有一个变量

var Something = "Text";

我想导入位于abc文件夹中的Text .as 那我该怎么办?我试着写:

 import abc.Something;

不起作用,有什么帮助吗? 再说一下主要观点,我想导入文本

1 个答案:

答案 0 :(得分:1)

你想做什么是行不通的。 import语句适用于类。您可以在静态变量中定义文本字符串,然后在代码中使用此变量。请注意,这不是一个好的设计。

package abc{
   public class TextHolder
   {
        public static var something:String = "Text"; 
   }
}

在另一个班级:

package {
   import abc.TextHolder
   public class Main
   {
       var text:String = TextHolder.something;
   }
}

您也可以使用include语句。使用此参数,您可以将文件包含在当前文件中

include "abc.script.as"

此脚本中的变量将包含在当前脚本中。

你真正想要的是,我想是在运行时加载文本和其他资源。

您只需使用URL Loader即可。 http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/URLLoader.html

这个例子来自adobe livedocs

package {
import flash.display.Sprite;
import flash.events.*;
import flash.net.*;

public class URLLoaderExample extends Sprite {

    private loader:URLoader;
    public function URLLoaderExample() {
        loader = new URLLoader();
        configureListeners(loader);

        var request:URLRequest = new URLRequest("urlLoaderExample.txt");
        try {
            loader.load(request);
        } catch (error:Error) {
            trace("Unable to load requested document.");
        }
    }

    private function configureListeners(dispatcher:IEventDispatcher):void {
        dispatcher.addEventListener(Event.COMPLETE, completeHandler);
        dispatcher.addEventListener(Event.OPEN, openHandler);
        dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler);
        dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
        dispatcher.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
        dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
    }

    private function completeHandler(event:Event):void {
        var loader:URLLoader = URLLoader(event.target);
        trace("completeHandler: " + loader.data);

        var vars:URLVariables = new URLVariables(loader.data);
        trace("The answer is " + vars.answer);
    }

    private function openHandler(event:Event):void {
        trace("openHandler: " + event);
    }

    private function progressHandler(event:ProgressEvent):void {
        trace("progressHandler loaded:" + event.bytesLoaded + " total: " + event.bytesTotal);
    }

    private function securityErrorHandler(event:SecurityErrorEvent):void {
        trace("securityErrorHandler: " + event);
    }

    private function httpStatusHandler(event:HTTPStatusEvent):void {
        trace("httpStatusHandler: " + event);
    }

    private function ioErrorHandler(event:IOErrorEvent):void {
        trace("ioErrorHandler: " + event);
    }
}

}

它有点多,但涵盖了加载ascii数据的整个过程。