EUI库 - 容器

eui.UILayer UILayer是Group的子类它只有一个功能,到放到场景上后,宽高永远和场景宽度一致  
Group Group 是自动布局的容器基类。如果包含的子项内容太大需要滚动显示,可以在在 Group 外部包裹一层 Scroller 组件(将 Group 实例赋值给 Scroller 组件的 viewport 属性)。Scroller 会为 Group 添加滚动的触摸操作功能,并显示垂直或水平的滚动条。 做过试验了
操作内部对象的方法 和Sprite基本一致,只是多了getElementAt 和 numElements  
容器内部的布局方式 myGroup.layout = new eui.HorizontalLayout(); 做过试验了
获取内容内对象的实际高度可用 myGroup.contentHeight 做过试验了
清除容器内的对象 调用 removeChildren 方法可以删除所有的内部显示对象  
容器的高度 在没被外部显示设置尺寸时,自己会测量出一个合适的大小,这时Group的宽度就是contentWidth和contentHeight  
如何内容尺寸超过窗口尺寸 默认是全部显示的,如何才能不显示 myGroup. scrollEnabled = true  
层叠容器 用 ViewStack 就行向里面addChild( 子对象 ) ;用selectedIndex来控制显示哪个子对象  
面板容器 Panel 皮肤用的是 eui_skins里面默认的  
滚动控制容器 Egret要禁用浏览器的滚动 以免对交互造成干扰 所以Egret的滚动需求自己来实现注意位置和尺寸的约束应该是在Scroller上面,而不是容器上面Scroller.viewport = myGroup  
通过代码也可以获取和控制滚动的位置 Scroller.viewport.scrollVthis.scroller.viewport.scrollV 为正数时表示 viewport里的实际内容向上移动  
时间: 2024-10-23 08:03:15

EUI库 - 容器的相关文章

EUI库 - 9 - 数据集合 - 数据容器

DataGroup 设置一个数据源 自动创建内部所需的对象 来完成数据展示   还要设置单条数据的模板  叫ItemRenderer 继承关系 eui.List  eui.ListBase eui.DataGroup eui.Group 创建ItemRenderer 继承 eui.ItemRenderer 然后在内部添加自定义的功能 dataGroup.itemRenderer = LabelRenderer  策略1 useVirtualLayout  = false 有多少条数据就创建多少个

STL标准库-容器-list

摘要: 技术在于交流.沟通,本文为博主原创文章转载请注明出处并保持作品的完整性. list 表示非连续的内存区域,并通过一对指向首尾元素的指针双向链接起来,从而允许向前和向后两个方向进行遍历.在list 的任意位置插入和删除元素的效率都很高. 它的结构 一 定义 头文件 #include <vector> #include <iostream> #include <list> using namespace std; int main(int argc, const c

STL标准库-容器-set与multiset

摘要: 技术在于交流.沟通,转载请注明出处并保持作品的完整性. set与multiset关联容器 结构如下 set是一种关联容器,key即value,value即key.它是自动排序,排序特点依据key set的key不能相同.multiset的key相同.关联容器的查找效率要高于顺序容器很多很多. set和multiset不提供用来直接存取元素的任何操作函数,取值需要通过迭代器 一 定义 1.set/mulitiset以红黑树为底层结构,因此有元素自动排序的特性,排序是根据key,而set.m

EUI库 - EXML

  EXML是可以运行时加载解析的   <e:Skin class="skins.ButtonSkin" states="up,down,disabled" minHeight="50" minWidth="100" xmlns:e="http://ns.egret.com/eui"> <e:Image width="100%" height="100%&qu

EUI库 - 自动布局

自适应流式布局 width="100%" top left right horizontalCenter=0 失效验证机制 这些异步过程都封装好了,我们只需要关注那一对方法: invalidateProperties() 和 commitProperties() ,前者标记属性失效,后者应用失效的属性   一个是测量验证   invalidateSize() 和 measure() 一个是布局验证. invalidateDisplayList() 和 updateDisplayList

EUI库 - 概述

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

EUI库 - 皮肤

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

STL标准库-容器-deque

摘要: 技术在于交流.沟通,本文为博主原创文章转载请注明出处并保持作品的完整性. deque双向开口可进可出的容器 我们知道连续内存的容器不能随意扩充,因为这样容易扩充别人那去 deque却可以,它创造了内存连续的假象. 其实deque由一段一段构成 ,他是分段连续,而不是内存连续 当走向段的尾端时候自动跳到下一段 所以支持迭代器++ 操作,自动跳到下一段的方法由operator++实现 deque每次扩充 申请一个段 一 定义 头文件 #include <deque> int main_0(

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

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