结构:同类型的UI组件可以有不同的结构。
皮肤:与结构是配对的。不同的结构需要完全不同的皮肤。皮肤使用基调提供的静态颜色属性。
基调:静态定义主体色调。比如背景颜色,字体大小,按钮颜色等。
===================================
使用UI组件构建应用时,需要设置诸如按钮颜色,字体大小之类的吗?
答:不需要,这些属于皮肤定义的范畴。
如何通过代码动态变更字体大小呢?
答:如果动态更改字体大小成为了“目的”,那么,字体大小就不再是“皮肤”,而变成了业务逻辑处理的“对象”,成为了逻辑的一部分。
所以如果是这种情况,皮肤中将不再定义字体大小,而是交由逻辑来动态设定。
动态皮肤如何实现(比如不断变化的背景颜色)?
答:方法1: 在皮肤内部设定EnterFrame事件监听器,来周期性地刷新皮肤。
方法2:使用图片(带动态效果)皮肤。
方法3:通常的App界面上,极少有动态皮肤。为了保持皮肤的“纯洁性”,索性不支持动态皮肤
为开发App界面,需要准备很多皮肤吗?
答:通常需要为所有使用的到的UI组件,准备一整套皮肤。可在皮肤库中选择,也可以根据示例进行自定义。如果皮肤的外观非常个性化,则皮肤的开发还是有一定的工作量。这是值得的,不是吗?