EUI库 - 概述

 
新特性 36k
  访问EUI组件宽高时,也会跟原生显示对象的表现一致,立即能得到包含子项的宽高值
  统一的显示列表  普通对象和eui对象都可用addChild来添加
  一个逻辑组件只管代码控制,一个皮肤组件只负责外观
内部类
 <e:Button label="按钮">

<e:Skin states="up,over,down,disable">

<e:Image source="image/button_up.png" includeIn="up" width="100%" height="100%" />

<e:Image source="image/button_down.png" includeIn="down" width="100%" height="100%" />

<e:Label id="LabelDisplay" left="20" right="20" top="10" text="{data.label}" />

</e:Skin>

</e:Button>

即这个皮肤只应用于这个button

<e:List id="list" cacheAsBitmap="false">

<e:itemRendererSkinName>

<e:Skin states="up,down">

<e:Image source="image/button_up.png" includeIn="up" width="100%" height="100%" />

<e:Image source="image/button_down.png" includeIn="down" width="100%" height="100%" />

<e:Label id="LabelDisplay" left="20" right="20" top="10" text="{data.label}" />

</e:Skin>

</e:itemRendererSkinName>

</e:List>

  。当你需要复用这个按钮皮肤时,再一键将内部皮肤转换为独立EXML文件,变成可复用的。
  运行时解析EXML
  在EXML根节点上设置class属性,class属性的值会被解析并注册为全局类名。若不声明,这个EXML文件解析的类定义会被解析器作为一个临时变量返回。
exml描述非皮肤对象
原来EXML的根节点被限制为Skin皮肤节点

EXML的根节点不再必须是Skin,可以为任意组件。这个特性全面提升了EXML的适用范围,能够简化普通容器的显示列表创建过程。解析后的对象是一个继承自根节点的自定义类。定义了ID的节点,会在自定义类上以ID名声明一个成员变量持有该节点的引用。

动态数据绑定 之前我们通常要写一个ItemRenderer的逻辑类,覆盖dataChanged()方法,访问data属性,然后重新赋值刷新所有相关的视图组件。现在只需要简单地定义一个数据绑定标签,无需任何繁琐的过程
时间: 2024-10-15 13:03:18

EUI库 - 概述的相关文章

第4章 C++STL泛型库概述

/* 第二篇 C++STL泛化技术基础 第4章 C++STL泛型库概述 4.1 C++STL的发展历程 4.2 C++STL的各种实现版本 4.3 C++STL的Visual C++编译 4.4 C++STL的体系结构 4.5 C++STL存在的一些问题 4.6 本章小结 第二篇 C++STL泛化技术基础 第4章 C++STL泛型库概述 4.1 C++STL的发展历程 4.2 C++STL的各种实现版本 4.2.1 HP STL 4.2.2 SGI STL 4.2.3 STLport 4.2.4

程序设计语言-标准库概述

1 认识标准库 没有任何一个重要程序只用某种赤裸裸的程序设计语言写出的:首先总要开发出一组支持库,这也形成了进一步工作的基础. 2 第一个程序 #include<iostream>  //指编译器包含位于iostream里的标准流I/O功能的声明 int main() //定义一个main()函数,该函数没有参数,也不做任何事情 { std::cout<<"hello,world!\n"; //字符串文字量"hello,world!\n"将被

【转】Struts1.x系列教程(4):标签库概述与安装

转载地址:http://www.blogjava.net/nokiaguy/archive/2009/01/archive/2009/01/archive/2009/01/archive/2009/01/15/251411.html Struts的整个视图层(就是MVC模式中的View层)是由Struts的定制标签(或者称为定制动作)和客户端代码(Javascript.HTML等)实现的.这些Struts标签被写在JSP页面中,用于生成客户端代码.进行逻辑判断等工作,使用Struts标签可以尽量

容器库概述

容器类型上的操作形成了一种层次: 某些操作是所有容器类型都提供的,如下表所示 一般来说,每个容器都定义在一个头文件中,文件名与类型名相同.即,deque定义在头文件deque中,list定义在头文件list中,以此类推.容器均定义为模板类.例如对于vector,我们必须提供额外信息来生成特定的容器类型.对大多数,但不是所有容器,我们还需要额外提供元素类型信息: list<Sales_data> //保存Sales_data对象的list deque<double> //保存doub

C++标准库概述 [转]

C++标准库的所有头文件都没有扩展名. C++标准库的内容总共在50个标准头文件中定义,其中18个提供了C库的功能.<cname>形式的标准头文件[<complex>例外]其内容与ISO标准C包含的name.h头文件相同,但容纳了C++扩展的功能.在<cname>形式标准的头文件中,与宏相关的名称在全局作用域中定义,其他名称在std命名空间中声明.在C++中还可以使用name.h形式的标准C库头文件名. C++标准库的内容分为10类: C1.语言支持 :   C2.输入

【C】 06 - 标准库概述

任何程序都会有一些通用的功能需求,对这些需求的实现组成了库.它可以提高程序的复用性.健壮性和可移植性,这也是模块化设计的体现.C规范定义了一些通用接口库,这里只作概述性介绍,具体细节当然还是要查阅规范. 为了提高效率,C的很多库函数会同时有一个宏定义的版本,所以传递参数时尽量使用没有副作用的表达式,以免发生错误.若不想使用宏版本的函数,可以采用三个方法:(1)先undef宏:(2)函数名用括号括起来:(3)不include头文件. // method 1 #include <stdlib.h>

python17:基础库概述

这里对python的基础库做一个简要概述,包括每个模块的基本功能和常用操作.更详细的信息请参考Python库参考. 操作系统接口 操作系统接口对应os模块,用于与操作系统交互: >>> import os >>> os.getcwd() # 返回当前的工作目录 'C:\\Python34' >>> os.chdir('/server/accesslogs') # 改变当前工作目录 >>> os.system('mkdir today'

EUI库 - 皮肤

皮肤分离机制    皮肤分离机制对制作可复用的外观比较有优势 那对于只使用一次的皮肤呢?如果也拆分出两个文件,显然不太方便.这里我们针对单次使用的皮肤定制了内部类的功能   每个组件都有一个childrenCreated()方法,它会在组件初始化完成后回调,子类通常覆盖这个方法来访问一些延迟实例化的子项. 皮肤部件 在皮肤附加到逻辑组件上时,会自动匹配双方的同名变量和id,这些同名变量就叫做"皮肤部件"(SkinPart)   .当为某个组件定制皮肤时,实际上就分为创建对应的皮肤部件和

EUI库 - 9 - 数据集合 - 列表

List 和DataGroup的区别 1 选中一项 会触发 eui.ItemEvent.ITEM_TAP 事件, 2 有选中项的概念,可以设置 List 里的默认选中项 selectedIndex selectedItem 3 可以开启多选状态 allowMultepleSelection = true ; selectedIndices selecteditems requireSelection 至少要有一个被选中 4 配合Scroller可实现滚动效果