如何在Actionscript 3中使用ComboBox制作小型闪存swf?
我有一个纯ActionScript 3项目,使用flash。*库,编译为约6k(使用mxmlc)。程序处理大约1k形状,几个精灵,一个插座连接,工作很好(味道少灌装)。如何在Actionscript 3中使用ComboBox制作小型闪存swf?
现在,我将如何增加不会产生过多的膨胀ComboBox控件?
更specificially,我想保持大小100K下。
到目前为止,我曾尝试:
- Adobe mx.controls ComboBoxexample - 简单的MXML示例编译为 + K都在我的Linux主箱体采用mxmlc的和Windows使用Flash Builder 4
- Yahoo Astra - 使用MX下面的库(像Adobe一样臃肿?),加上不包含确切的组合框
- Keith Peter's MinimalComps - 似乎很小,但远不能提供ComboBox功能
- SPAS (Swing Package for Actionscript) - 编译为130k,但ComboBox的alpha版本不让我调整高度...
- asuilib - 编译为40k,不幸的是这个ComboBox不提供滚动项目...如果它不适合屏幕没有办法滚动到它
现在我的问题:
- 有没有办法来降低导入为mx.controls项目大小?
- 也许有修复SPAS或asuilib组合框的方法吗?
- 也许,不存在提供一个组合框(或DropList)一些其它库?
我是SPAS 3.0开发人员,所以我会尽力给你一些(有用的)答案。
>混淆许可证
SPAS 3.0不是完全免费的,但它是(总是会)自由使用。这是Java API许可证。这意味着你可以按你想要的方式使用这个API,但是你不能改变或者销售SPAS 3.0源代码。
>显然是一个开发商
你说得对!我目前正致力于让SPAS 3.0获得“真正的长期生存力”。
>某些功能缺失,错误在阿尔法
明显的右太;)我知道,许多开发商已经由API disapointed,因为这种选择。
因此,如果任何人有关于错误或功能缺失的问题,请随时与我联系。我总是回答有关SPAS 3.0的问题。
帕斯卡尔
尽管我不知道要缩小mx.controls的大小,但可以选择创建共享资源。这样您的文件大小保持不变,并且组合框资源被缓存。
缩小应用程序SWF文件大小的一种方法是将共享资源外部化为独立文件,这些文件可以单独下载并缓存在客户端上。这些共享资源在运行时被任意数量的应用程序加载,但只需要传输给客户端一次。
参见http://livedocs.adobe.com/flex/3/html/help.html?content=intro_3.html
<?xml version="1.0">
<flex-config>
<compiler>
<source-path>
<path-element>../mycomponents/components/local</path-element>
</source-path>
</compiler>
<output>../libraries/CustomCellRenderer</output>
<directory>true</directory>
<debug>false</false>
<include-classes>
<class>CustomCellRendererComponent</class>
</include-classes>
</flex-config>
托德这是一个很好的建议。但是,在我的特殊情况下,很可能用户经常没有使用闪光灯(除了我的应用程序),所以我不确定节省何时会发挥作用。 – Sint 2010-02-11 18:12:56
临时解决方法:使用上述SPAS package,
利弊
- 具有体面的文件
- 例子
- 比MX更轻。控制
- 最后,但并非最不重要的,它的实际工作
利弊
- 混淆许可证,显然是免费的啤酒,但不是在语音
- 一些功能缺失,漏洞明显,阿尔法(DOH)
- 仍超过10万编译
- 显然是一个开发者,长期生存能力嫌疑
长期:仍然愿意接受一个“更好”闪存库与ComboBox的答案。
帕斯卡,谢谢你回答我的关注。我继续使用SPAS,因为它适用于我。 :) – Sint 2011-02-02 07:45:37