gpt4 book ai didi

actionscript-3 - 什么是闪存配置常量的替代方案?

转载 作者:行者123 更新时间:2023-12-04 05:51:07 24 4
gpt4 key购买 nike

我们有一个用 Flash 和 as3 构建的项目。它是我们想要完全自定义的各种视频播放器。我们有不同的图像和配色方案,我们希望能够非常快速地更改它们。现在我们有针对不同方案打开和关闭的配置常量。并且在代码中有大量不同的点,其中图像等发生了变化。

当我们创建一个新的配色方案或其他什么时,我们需要创建一个新的配置。然后我们必须检查所有代码并正确放入。

基本上任何关于我们如何采用当前 Flash 项目(也许是 flex?)并使其可定制的速度更快的建议。

最佳答案

将所有可配置参数移至 XML 定义。

为每个自定义创建多个 XML 文档。

在代码中,为可配置参数建立默认值,然后加载 XML 和 XML 文档的引用值作为这些默认值的覆盖。

对于生产构建,如果加载外部资源是部署的一个问题,则可以将 XML 嵌入到程序集中。

通过加载不同的配置 XML 文档,您可以在运行时更改定义,并且通过使用动态配置模型,您可以起草一个主题编辑器来实时查看更改。

配置模型.as

package
{
import flash.events.Event;
import flash.net.URLLoader;
import flash.net.URLRequest;

public class ConfigurationModel
{

/** ======== configuration ======== */

public static var color:uint = 0xff00ff;

public static var fontName:String = "Arial";


/** ======== serialization ======== */

public static function loadConfiguration(url:String):void
{
var loader:URLLoader = new URLLoader(new URLRequest(url));
loader.addEventListener(Event.COMPLETE, completeHandler);
}

protected static function completeHandler(event:Event):void
{
var xml:XML = new XML(event.target.data);

if (xml.color)
color = xml.color;

if (xml.fontName)
fontName = xml.fontName;
}

}
}

示例配置:AcmeClientConfiguration.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<color>0xff0000</color>
<fontName>Calibri</fontName>
</configuration>

关于actionscript-3 - 什么是闪存配置常量的替代方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10034021/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com