Haxe UI框架StablexUI的使用备忘与心得(序)
最近在手上的项目开发中,从原来的使用Sprite全手写UI,开始逐步使用StablexUI,感觉还是相当不错的,强大、高效、轻量、灵活,非常适应我当前的实际需求。
不过作为小种语言的一个小众第三方开源库,虽然StablexUI的官方文档还算比较全面,但实际使用中遇到的很多问题都是文档未涉及或语焉不详的,需要参考源代码进行分析,这里会使用系列博文的形式,把我的学习心得记载下来,一方面作为备忘供自己未来查询,也可供其他开发者参考。
首先简单介绍一下StablexUI库。
StablexUI是一个纯Haxe语言的跨平台UI库,作者是一个俄国人,大概是从今年(2013)初正式发布的。
Github项目主页:https://github.com/RealyUniqueName/StablexUI
官方文档:http://ui.stablex.ru/doc/
需要特别指出的是,在StablexUI之前,专为Haxe开发的,同时适用于桌面、移动设备和浏览器的UI框架还基本不存在。因为那个时候我就深切感到了在没有UI框架支持的情况下编写界面的繁琐,特意评估了很多UI库,但是没有找到特别合适的。
我评估过的UI库包括:
HaxeAswing: 国人作品Aswing的Haxe移植版,感觉主要适用于桌面,风格不太适合移动设备
waxe: C++ UI库wxWidget的Haxe接口,不能跨平台
FeaturesUI: 基于Starling的UI库,很适合移动设备,但仅有AS3版本
后来大概在2012年底、2013年初这一段时间,出现了HaxeUI和StablexUI这两套第三方UI库,目前看来都是比较不错的选择。
HaxeUI是一套比较中规中矩的UI框架和组件库,但它的设计中其控件基类不是基于Sprite的,初期版本也不支持xml形式的界面定义。
而StablexUI虽然出现的比HaxeUI略晚,但让它成为我的最终选择的是它的几大突出特点:
* 从一开始就支持由xml生成界面,即所谓数据驱动开发。
* 充分利用了Haxe的宏语言特性,其xml解析发生在编译期,生成的界面构建代码极为高效。
* 控件基类派生于Sprite,可以方便灵活的集成于现有项目中。
* 库的架构设计非常轻量级,层次很少,灵活易于扩展。
* 真正的跨平台,完美支持Flash, C++ native, Html5。可试用官网中提供的demo:Flash版,Html5版
Haxe UI框架StablexUI的使用备忘与心得(序)的更多相关文章
- Haxe UI框架StablexUI的使用备忘与心得(一)
这一节先来说说StablexUI的基本方面. 安装与使用,在官方文档里Getting Started一章里写的很清楚,这里就不展开了,简单总结来说: * StablexUI依赖于actuate缓动库和 ...
- 树的遍历顺序 - dfs序|欧拉序|dfn序(备忘)
(仅作备忘) dfs序是dfs过程中对于某节点进入这个节点的子树和离开子树的顺序 满足每个节点都会在dfs序上出现恰好两次 任意子树的dfs序都是连续的 欧拉序是dfs过程中经过节点的顺序 每个节点至 ...
- ASP.NET MVC搭建项目后台UI框架—11、自动加载下拉框查询
ASP.NET MVC搭建项目后台UI框架—1.后台主框架 需求:在查询记录的时候,输入第一个字,就自动把以这个字开头的相关记录查找出来,输入2个字就过滤以这两个子开头的记录,依次类推. 突然要用到这 ...
- AngularJS之备忘与诀窍
译自:<angularjs> 备忘与诀窍 目前为止,之前的章节已经覆盖了Angular所有功能结构中的大多数,包括指令,服务,控制器,资源以及其它内容.但是我们知道有时候仅仅阅读是不够的. ...
- ASP.NET MVC搭建项目后台UI框架—5、Demo演示Controller和View的交互
目录 ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2.菜单特效 ASP.NET MVC搭建项目后台UI框架—3.面板折叠和展开 ASP.NE ...
- Unity3D 搭建优雅的UI框架
为什么要使用UI框架?直接使用NGUI或UGUI一拖一拉直接搭载出界面不就行了? 我相信很多小白,包括我在刚学习Unity3D UI的时候都这样想过. 我的第一款款Unity2D游戏<山地赛车& ...
- Nmap备忘单:从探索到漏洞利用(Part 5)
这是备忘单的最后一部分,在这里主要讲述漏洞评估和渗透测试. 数据库审计 列出数据库名称 nmap -sV --script=mysql-databases 192.168.195.130 上图并没有显 ...
- [原]TCP/UDP使用细节备忘
body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...
- HTML5终极备忘大全
二.文字备忘之标签 HTML5中新增的标签 <article> 定义文章 <aside> 定义页面内容旁边的内容 <audio> 定义声音内容 <canvas ...
随机推荐
- 裸机离奇事件:Freescale usb 有关fault
裸机离奇事件:Freescale usbucosiiFreescale\KSDK_1.2.0\examples\twrk65f180m\demo_apps\usb\host\cdc\cdc_seria ...
- Java中有关日期的一些常见运算与应用(Date,DateFormat,SimpleDateFormat)
import java.text.DateFormat; import java.text.DateFormat; import java.text.SimpleDateFormat; import ...
- 子进程管理模块subprocess
subprocess模块允许你生成子进程,连接管道,并获取返回的代码. 一.使用subprocess模块 模块中定义了一个Popen类: subprocess.Popen(args, bu ...
- PLSQL developer登录身份证明检索失败的解决办法
全都在一个下图中:
- 第二节 EAN 8 码 / EAN 13 码
EAN码的全名为欧洲商品条码(European Article Number),源於西元1977年,由欧洲十二个工业国家所共同发展出来的一种条码.目前已成为一种国际性的条码系统.EAN条码系统的管理是 ...
- linux基础随笔
磁盘管理 sda s:磁盘接口的类型(sata scsci sas) d:驱动器(drive) a:(第一块磁盘,同理b第二块磁盘)hda h:ide接口 第一块磁盘的第一个分区:sda1 mount ...
- 点菜系统 pickview的简单实用
使用pickview的时候多想想tableview的使用,观察两者的相同之处 pickview的主要用途用于选择地区 生日年月日 和点餐 示例代码 简单的pickview点餐系统// ViewC ...
- linux之文本编辑器
[目标] 管理员在进行系统操作的时候,不可避免地会对文本进行修改,如进行各种服务程序配置文件的修改,使程序对用户提供不同的服务效果.在本章我们向大家介绍Linux上常见的编辑器ed.vi.emacs, ...
- ExtJS4.2 - 从 Hello World 到 自定义组件 -01 (为爱女伊兰奋斗)
ExtJS4.2 - 从 Hello World 到 自定义组件 - 01 经验.概述.项目搭建.国际化.HelloWorld.布局 —— 为爱女伊兰而奋斗 ——少走弯路,简单才是王道 1. 写在前面 ...
- 【Oracle】ORA-06550 PLS-00201
ORA-06550 第1行,第7页 PLS-00201 必须声明标识符“PROC_****” 改错了首先检查连接的数据库库里面有没有这个存储过程.(检查是否配置对了数据库)