Package | laya.ui |
Class | public class HBox |
Inheritance | HBox LayoutBox Box Component Sprite Node EventDispatcher Object |
HBox
是一个水平布局容器类。
Property | Defined By | ||
---|---|---|---|
align : String 子对象对齐方式。 | LayoutBox | ||
alpha : Number 透明度,值为0-1,默认值为1,表示不透明。更改alpha值会影响drawcall。 | Sprite | ||
anchorX : Number X轴锚点,值为0-1 | Component | ||
anchorY : Number Y轴锚点,值为0-1 | Component | ||
autoSize : Boolean = false
指定是否自动计算宽高数据。默认值为 false 。
Sprite宽高默认为0,并且不会随着绘制内容的变化而变化,如果想根据绘制内容获取宽高,可以设置本属性为true,或者通过getBounds方法获取。设置为true,对性能有一定影响。
| Sprite | ||
blendMode : String 指定要使用的混合模式。目前只支持"lighter"。 | Sprite | ||
bottom : Number
从组件底边到其内容区域底边之间的垂直距离(以像素为单位)。
| Component | ||
cacheAs : String
指定显示对象是否缓存为静态图像,cacheAs时,子对象发生变化,会自动重新缓存,同时也可以手动调用reCache方法更新缓存。
建议把不经常变化的“复杂内容”缓存为静态图像,能极大提高渲染性能。cacheAs有"none","normal"和"bitmap"三个值可选。
默认为"none",不做任何缓存。
当值为"normal"时,canvas模式下进行画布缓存,webgl模式下进行命令缓存。
当值为"bitmap"时,canvas模式下进行依然是画布缓存,webgl模式下使用renderTarget缓存。
webgl下renderTarget缓存模式缺点:会额外创建renderTarget对象,增加内存开销,缓存面积有最大2048限制,不断重绘时会增加CPU开销。优点:大幅减少drawcall,渲染性能最高。
webgl下命令缓存模式缺点:只会减少节点遍历及命令组织,不会减少drawcall数,性能中等。优点:没有额外内存开销,无需renderTarget支持。
| Sprite | ||
cacheAsBitmap : Boolean
指定显示对象是否缓存为静态图像。功能同cacheAs的normal模式。建议优先使用cacheAs代替。
| Sprite | ||
centerX : Number
在父容器中,此对象的水平方向中轴线与父容器的水平方向中心线的距离(以像素为单位)。
| Component | ||
centerY : Number
在父容器中,此对象的垂直方向中轴线与父容器的垂直方向中心线的距离(以像素为单位)。
| Component | ||
comXml : Object
XML 数据。
| Component | ||
customRenderEnable : Boolean [write-only]
设置是否开启自定义渲染,只有开启自定义渲染,才能使用customRender函数渲染。
| Sprite | ||
dataSource : * [override]
数据赋值,通过对UI赋值来控制UI显示逻辑。
简单赋值会更改组件的默认属性,使用大括号可以指定组件的任意属性进行赋值。
| Box | ||
destroyed : Boolean [只读]是否已经销毁。对象销毁后不能再使用。 | Node | ||
disabled : Boolean 是否禁用页面,设置为true后,会变灰并且禁用鼠标。 | Component | ||
displayedInStage : Boolean [read-only] 表示是否在显示列表中显示。 | Node | ||
displayHeight : Number [read-only]
对象的显示高度(以像素为单位)。
| Component | ||
displayWidth : Number [read-only]
对象的显示宽度(以像素为单位)。
| Component | ||
filters : Array 滤镜集合。可以设置多个滤镜组合。 | Sprite | ||
globalScaleX : Number [read-only]
获得相对于stage的全局X轴缩放值(会叠加父亲节点的缩放值)。
| Sprite | ||
globalScaleY : Number [read-only]
获得相对于stage的全局Y轴缩放值(会叠加父亲节点的缩放值)。
| Sprite | ||
graphics : Graphics 绘图对象。封装了绘制位图和矢量图的接口,Sprite所有的绘图操作都通过Graphics来实现的。 | Sprite | ||
gray : Boolean 是否变灰。 | Component | ||
height : Number [override] | HBox | ||
hitArea : *
可以设置一个Rectangle区域作为点击区域,或者设置一个HitArea实例作为点击区域,HitArea内可以设置可点击和不可点击区域。
如果不设置hitArea,则根据宽高形成的区域进行碰撞。
| Sprite | ||
hitTestPrior : Boolean = false
指定鼠标事件检测是优先检测自身,还是优先检测其子对象。鼠标事件检测发生在鼠标事件的捕获阶段,此阶段引擎会从stage开始递归检测stage及其子对象,直到找到命中的目标对象或者未命中任何对象。
如果为false,优先检测子对象,当有子对象被命中时,中断检测,获得命中目标。如果未命中任何子对象,最后再检测此对象;如果为true,则优先检测本对象,如果本对象没有被命中,直接中断检测,表示没有命中目标;如果本对象被命中,则进一步递归检测其子对象,以确认最终的命中目标。
合理使用本属性,能减少鼠标事件检测的节点,提高性能。可以设置为true的情况:开发者并不关心此节点的子节点的鼠标事件检测结果,也就是以此节点作为其子节点的鼠标事件检测依据。
Stage对象和UI的View组件默认为true。
| Sprite | ||
layoutEnabled : Boolean = true
是否启用相对布局
| Component | ||
left : Number
从组件左边到其内容区域左边之间的水平距离(以像素为单位)。
| Component | ||
mask : Sprite
遮罩,可以设置一个对象(支持位图和矢量图),根据对象形状进行遮罩显示。
【注意】遮罩对象坐标系是相对遮罩对象本身的,和Flash机制不同
| Sprite | ||
mouseEnabled : Boolean
是否接受鼠标事件。
默认为false,如果监听鼠标事件,则会自动设置本对象及父节点的属性 mouseEnable 的值都为 true(如果父节点手动设置为false,则不会更改)。
| Sprite | ||
mouseThrough : Boolean = false
鼠标事件与此对象的碰撞检测是否可穿透。碰撞检测发生在鼠标事件的捕获阶段,此阶段引擎会从stage开始递归检测stage及其子对象,直到找到命中的目标对象或者未命中任何对象。
穿透表示鼠标事件发生的位置处于本对象绘图区域内时,才算命中,而与对象宽高和值为Rectangle对象的hitArea属性无关。如果sprite.hitArea值是HitArea对象,表示显式声明了此对象的鼠标事件响应区域,而忽略对象的宽高、mouseThrough属性。
影响对象鼠标事件响应区域的属性为:width、height、hitArea,优先级顺序为:hitArea(type:HitArea)>hitArea(type:Rectangle)>width/height。
| Sprite | ||
mouseX : Number [read-only]
返回鼠标在此对象坐标系上的 X 轴坐标信息。
| Sprite | ||
mouseY : Number [read-only]
返回鼠标在此对象坐标系上的 Y 轴坐标信息。
| Sprite | ||
name : String 节点名称。 | Node | ||
numChildren : int [read-only]
子对象数量。
| Node | ||
optimizeScrollRect : Boolean
指定是否对使用了 scrollRect 的显示对象进行优化处理。默认为false(不优化)。
当值为ture时:将对此对象使用了scrollRect 设定的显示区域以外的显示内容不进行渲染,以提高性能(如果子对象有旋转缩放或者中心点偏移,则显示筛选会不精确)。
| Sprite | ||
parent : Node [override] | Sprite | ||
pivotX : Number X轴 轴心点的位置,单位为像素,默认为0。轴心点会影响对象位置,缩放中心,旋转中心。 | Sprite | ||
pivotY : Number Y轴 轴心点的位置,单位为像素,默认为0。轴心点会影响对象位置,缩放中心,旋转中心。 | Sprite | ||
right : Number
从组件右边到其内容区域右边之间的水平距离(以像素为单位)。
| Component | ||
rotation : Number 旋转角度,默认值为0。以角度为单位。 | Sprite | ||
scaleX : Number [override] X轴缩放值,默认值为1。设置为负数,可以实现水平反转效果,比如scaleX=-1。 | Component | ||
scaleY : Number [override] Y轴缩放值,默认值为1。设置为负数,可以实现垂直反转效果,比如scaleX=-1。 | Component | ||
scrollRect : Rectangle
显示对象的滚动矩形范围,具有裁剪效果(如果只想限制子对象渲染区域,请使用viewport),设置optimizeScrollRect=true,可以优化裁剪区域外的内容不进行渲染。
srollRect和viewport的区别:
1.srollRect自带裁剪效果,viewport只影响子对象渲染是否渲染,不具有裁剪效果(性能更高)。
2.设置rect的x,y属性均能实现区域滚动效果,但scrollRect会保持0,0点位置不变。
| Sprite | ||
skewX : Number 水平倾斜角度,默认值为0。以角度为单位。 | Sprite | ||
skewY : Number 垂直倾斜角度,默认值为0。以角度为单位。 | Sprite | ||
space : Number 子对象的间隔。 | LayoutBox | ||
stage : Stage [read-only] 对舞台 stage 的引用。 | Sprite | ||
staticCache : Boolean
是否静态缓存此对象的当前帧的最终属性。为 true 时,子对象变化时不会自动更新缓存,但是可以通过调用 reCache 方法手动刷新。
注意: 1. | Sprite | ||
tag : *
对象的标签。
| Component | ||
texture : Texture 设置一个Texture实例,并显示此图片(如果之前有其他绘制,则会被清除掉)。等同于graphics.clear();graphics.drawTexture() | Sprite | ||
timer : Timer 时间控制器,默认为Laya.timer。 | Node | ||
toolTip : *
鼠标悬停提示。
可以赋值为文本 String 或函数 Handler ,用来实现自定义样式的鼠标提示和参数携带等。
| Component | ||
top : Number
从组件顶边到其内容区域顶边之间的垂直距离(以像素为单位)。
| Component | ||
transform : Matrix
对象的矩阵信息。通过设置矩阵可以实现节点旋转,缩放,位移效果。
矩阵更多信息请参考 Matrix
| Sprite | ||
viewport : Rectangle = null
视口大小,视口外的子对象,将不被渲染(如果想实现裁剪效果,请使用srollRect),合理使用能提高渲染性能。比如由一个个小图片拼成的地图块,viewport外面的小图片将不渲染
srollRect和viewport的区别:
1. | Sprite | ||
visible : Boolean 表示是否可见,默认为true。如果设置不可见,节点将不被渲染。 | Sprite | ||
width : Number [override]
表示显示对象的宽度,以像素为单位。
注:当值为0时,宽度为自适应大小。
| Component | ||
x : Number 表示显示对象相对于父容器的水平方向坐标值。 | Sprite | ||
y : Number 表示显示对象相对于父容器的垂直方向坐标值。 | Sprite | ||
zOrder : Number z排序,更改此值,则会按照值的大小对同一容器的所有对象重新排序。值越大,越靠上。默认为0,则根据添加顺序排序。 | Sprite |
Method | Defined By | ||
---|---|---|---|
_setItemChanged():void | LayoutBox | ||
changeItems():void [override]
改变子对象的布局。
| HBox | ||
changeSize():void
重新调整对象的大小。
| Component | ||
commitMeasure():void
立即执行影响宽高度量的延迟调用函数。
| Component | ||
createChildren():void
创建并添加控件子节点。
| Component | ||
initialize():void
控件初始化。
| Component | ||
onCompResize():void
父容器的 Event.RESIZE 事件侦听处理函数。
| Component | ||
preinitialize():void
预初始化。
| Component | ||
resetLayoutX():void
重置对象的 X 轴(水平方向)布局。
| Component | ||
resetLayoutY():void
重置对象的 Y 轴(垂直方向)布局。
| Component | ||
sortItem(items:Array):void [override]
排序项目列表。可通过重写改变默认排序规则。
| HBox |
Constant | Defined By | ||
---|---|---|---|
BOTTOM : String = bottom [static]
居底部对齐。
| HBox | ||
MIDDLE : String = middle [static]
居中对齐。
| HBox | ||
NONE : String = none [static]
无对齐。
| HBox | ||
TOP : String = top [static]
居顶部对齐。
| HBox |
height | property |
height:Number
[override] public function get height():Number
public function set height(value:Number):void
changeItems | () | method |
override protected function changeItems():void
改变子对象的布局。
sortItem | () | method |
override protected function sortItem(items:Array):void
排序项目列表。可通过重写改变默认排序规则。
Parameters
items:Array — 项目列表。
|
BOTTOM | Constant |
public static const BOTTOM:String = bottom
居底部对齐。
MIDDLE | Constant |
public static const MIDDLE:String = middle
居中对齐。
NONE | Constant |
public static const NONE:String = none
无对齐。
TOP | Constant |
public static const TOP:String = top
居顶部对齐。