`

Starling Feathers:Starling专属UI框架

 
阅读更多

来自Starling中文站 http://www.starlinglib.com/wiki/News:Starling_Feathers

目录

 [隐藏

Feathers类库(即原Foxhole)成为Adobe支持的UI类库

更新:Lee Brimelow制作了Feathers UI的视频教程。

视频教程地址:http://gotoandlearn.com/play.php?id=173

Foxhole是一个和Starling整合的UI类库,相信已经不少人开始用了,现在成为Adobe支持的类库,更给力了!

Starling中文站翻译整理

 

 

简介

Feathers是轻量级,易于定制皮肤和扩展的UI组件(适用于移动设备和桌面)。Feathers通过Starling框架,利用GPU的强大能力渲染组件,来实现更加平滑和友好的体验。

实例演示

跨平台

利用Feathers可以为iOS,Android,Windows,Mac构建强大的,基于硬件加速的用户界面。通过Feathers, Starling Framework和Adobe的技术可以为所有操作系统创建本地应用。

易于皮肤定制

游戏通常需要UI界面风格和故事情节相匹配,而用户希望得到在某个平台上相似的用户体验。所以Feathers提供了很多皮肤选项和行为,来为移动和桌面应用定制皮肤。

自由和开放源码

Feathers是基于MIT协议开源的,所以您可以随意在商业或开源项目中使用Feathers。扩展和调试可能不太容易,因为您必须读懂和修改Feathers和Starling的源码(译者注:其实代码很清晰,容易读懂)。

概述

  • 设计的时候已经考虑到了移动设备.
    • 为电话和平板设备的性能进行了优化.
    • 支持多点触摸.
    • 滚动遵循了移动设备的体验,具备弹性边缘(如果需要的话,您也可以选择传统的桌面滚动条和滚轮控制).
    • 易于扩展,适配不同的屏幕尺寸和DPI.
  • 简单但功能强大的组件体系.
    • 改变属性后,设置"失效",直到Starling的呈现阶段才会渲染(类似Flex).
    • getStyle()/setStyle()方法不通过会导致含糊的字符串来设置样式,所有的皮肤和视觉属性都有严格的类型定义.
    • 使用 as3-signals 代替事件.
    • 工厂方法和接口允许您自定义子组件. 例如,选择最适合手机,平板电脑,或PC的组件类型.
    • 易于理解,如果您用过 Adobe Flex 或 Flash Pro AS3 组件的话.
  • 所有组件都是基于Starling显示对象的并且可以更换皮肤.
    • 组件通常会根据提供的皮肤的大小调整自己的尺寸.
    • 子组件可以继承父级的皮肤,一直嵌套下去.
    • 支持从其它项目剥离的皮肤代码形成的主题.
    • 支持9宫格,3宫格,以及平铺布局.
    • 智能的图片管理.
  • 插件支持的功能.
    • 支持位图和矢量文本渲染. 也可以自定义文本渲染方式.
    • 强大的按钮导航系统和过渡动画.
    • 拖拽支持.
    • 弹出窗体(模态和非模态).

组件

Feathers包括许多不同的组件,比如按钮,滑块,拨动开关,复选框,单选按钮,列表,进度条,文本输入,标签,导航,容器,标注等等。来看看其中一些组件的几个值得注意的特点。

  • 按钮
    • 可以为每个状态定义皮肤和图标, 包括 up, hover, down, 和 disabled.
    • 额外的 toggle/selection 行为.
  • 文本输入
    • 使用操作系统的本机输入,支持选择,复制和粘贴.
  • 滚动容器
    • 可以支持任何类型内容的滚动控制.
    • 多种内置布局,还可以自定义布局.
  • 列表
    • 可滚动的列表,单项可以选中.
    • 可定制的布局方式.
    • 布局虚拟化(提高性能).
    • 可改变itemRenderer的尺寸.
    • 自定义 itemRenderers.
    • 提供一个默认的itemRenderer类,来显示文本和图标,以及和按钮相似的视图状态.
    • 一个 ListCollection 实现对数据的封装. 支持 Array, Vector, 和 XMLList.
  • 分组列表
    • 提供更强大的列表功能.
    • 提供分组显示功能.
    • 为headers, footers, 和 items指定独立的渲染器.
    • 多维的数据描述.
  • 屏幕导航
    • 使用事件或消息来驱动屏幕切换 (如游戏中的菜单).
    • 屏幕切换时的数据共享
    • 为屏幕切换指定动画.
  • 大小: 29.3 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics