[Flex]解决引入OSX.css后控件字体显示不出来的问题!

最近研究了一下flex的css的一些东西,上网找了下只有现在的OSX和一写的不是很好的XP两种风格。其中OSX点此下载 OSX-CSS For Flex2。

幸好在osx中有源文件可以查看,大概看了一下都是可以读懂的(kenshin的css语法不是很好的)但是这个还是比较简单一些的。

用这句话就能使你的project调用制作好的css了<mx:Style source="css/OSX.css" />

切忌,要把css文件夹放到和你的这个mxml平级的文件夹中。具体位置可以参考ocs的源文件

其中osx.css里面的内容比如:

ApplicationControlBar {
highlightAlphas: 0, 1;
fillAlphas: 1, 1;
fillColors: #dedede, #ffffff;
fontSize: 13;
paddingLeft: 0;
paddingRight: 0;
paddingBottom: 0;
}

其中的ApplicationControlBar就是flex2的控件的名字

关于这个css具体我就不多说了,想详细看这个css的朋友请看这里:http://www.anyflex.cn/bbs/viewthread.php?tid=1241&extra=page%3D1

言归正传,如果你新建了一个project并且引入了这个css后成功后,如果在这个mxml中加入了一些控件象combobox,label后,在运行后这些控件的字体显示不出来!如果造成这个原因的估计有由于字体没有设置正确,删除其css后,问题解决,所以这个问题肯定是出在css里面,大概读了一下css的源代码,发现有以下的段:

@font-face {
src:url("lucidaGrande.swf");
font-family: "Lucida Grande";
}

这段说明整个文件的字体使用的是Lucida Grande这个字体,如果你系统中没有这个字体的话就会出现上述的问题,所以最好的解决方式就是使用flex中默认的字体,也就是说把这段应该“干掉”。

删除这段后问题解决,如果大家有上述的这种错误,可以参考这个方式!

PS:其他的关于flex的文章请看:http://www.k-zone.cn/zblog/catalog.asp?tags=Flex&page=1