我一直在寻找一套在纯AS环境下使用的组件库(如果你也在找,可以看看这里),曾经使用过一段时间ASWing,最终还是放弃了,后来就看到这套小巧的库。Minimal Comps是由业界大牛Keith Peter编写的一套轻量级纯AS组件库,用来写一些测试用的程序是再方便不过了,整个架构也非常清晰明了,一些没有提供的功能,自己也可以直接来修改源码实现。下面就简单说说这套组件的用法。

网上有些资料说这套组件是不支持中文的,其实不然。默认不能显示中文的原因主要是组件默认使用了嵌入字体。如果希望组件支持中文,将Style.embedFonts设置为false即可。其他的一些默认设置,例如字体、文字大小和颜色、组件背景色等等,都可以通过设置Style这个静态类的属性来实现。对于中文用户来说,还可以取消Components类中的嵌入字体,这样可以进一步减小最终文件的大小,要取消字体嵌入,在Components中搜索下面两句并注释掉即可。

1
2
3
4
// Flex 4.x sdk:
//[Embed(source="/assets/pf_ronda_seven.ttf", embedAsCFF="false", fontName="PF Ronda Seven", mimeType="application/x-font")]
// Flex 3.x sdk:
//[Embed(source="/assets/pf_ronda_seven.ttf", fontName="PF Ronda Seven", mimeType="application/x-font")]

Minimal Comps组件非常小,Keith Peter用该组件制作了一个站点,该站点只有一个swf文件,大小为43K,同时还制作了一个Designer,这个更小,约26K。

下面给出一个中文使用范例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package
{
import com.bit101.components.PushButton;
import com.bit101.components.Style;
import flash.display.Sprite;
public class MinimalComps extends Sprite
{
private var _btn:PushButton;
public function MinimalComps()
{
Style.fontSize = 12;
Style.embedFonts = false;
Style.fontName = 'Microsoft YaHei';
Style.BACKGROUND = 0x000000;
Style.BUTTON_FACE = 0xCCCCCC;
_btn = new PushButton(this, 100, 100, '测试');
_btn.setSize(100, 25);
// _btn.enabled = false;
}
}
}

留言

2010-09-21
次访问