在Flex库项目中使用defaults.css文件

在我提供咨询服务的众多开发公司中,使用内部的Flex库项目来拆分代码库很常见,但是在这些Flex库项目中却很少用到defaults.cssmanifest.xml文件。我花些时间介绍一下它们的工作方式以及使用它们的原因。这篇文章我只介绍defaults.css文件,manifest.xml文件将在下一篇文章中介绍。

创建自库项目来存放自定义组件时,经常需要设置这些自定义组件的默认样式。在使用含有皮肤文件的spark组件架构时,设置默认样式显得更加重要。你不希望这些组件的用户在使用组件时,还需要自己将默认皮肤关联到组件中。

我见过有些组件开发者在组件的构造函数中设置这些默认的样式。这对于大部分的样式来说可能没有什么大问题,但是对于皮肤文件来说就有问题了。比如:在组件的构造函数中直接指定皮肤文件后,在MXML文件中用MXML标签创建组件实例时,就不能通过标签属性设置一个不同的皮肤文件。

另一种常见的方式是在组件中设置静态的(初始化器)initializers。这个初始化器在样式声明中查找某个声明,如果没有找到的话,就定义一个默认的声明。这个方法没有问题,但跟defaults.css文件相比麻烦很多。

如果可以指定一个样式文件让库项目使用,事情会简单很多。问题是库项目不像普通Flex项目那样有一个主应用文件可以关联这个样式文件。defaults.css文件则解决了这个问题。如果你浏览过Flex SDK的文件系统的话,你应该知道SDK其实是一系列库项目的集合。这些包含众多可视组件的SDK库(如mx库和spark库)都各自有一个defaults.css文件,这些样式文件定义了这些可视组件的默认样式。你应该在你的库项目中使用这个技巧。

使用defaults.css的规则很少,就两条规则:

1. 样式文件的名称为“default.css”——都是小写字母

2.样式文件必须放在项目根目录

规则2中,如果你使用FlashBuilder的默认资源目录,则样式文件必须放在“src”文件夹中。如果你使用Maven推荐的约定,这个位置可能在“src/main/flex”包中。

就这么多,现在你可以正常定义组件的默认样式了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值