UIComponent

继承自

描述

UI约束和布局类别的基类

属性

UI节点像素和尺寸大小
UI节点缩放倍数
float
UI节点旋转度数
UI节点坐标
UI节点锚点(0~1),(0.5,0.5)为中点
bool
更新锚点时是否保持位置不变
bool
是否将触摸事件传递给父节点(为true时不传递)
UI节点边线颜色设置
UI节点填充颜色设置
int
UI节点边线像素和尺寸大小
bool
是否将点击事件穿透给场景
水平关联方式,包括左关联、中线关联和右关联。设置后,当父节点(若父节点为UIRoot则为屏幕)变化时,UI与关联位置的相对距离将保持不变
垂直关联方式,包括上关联、中线关联和下关联。设置后,当父节点(若父节点为UIRoot则为屏幕)变化时,UI与关联位置的相对距离将保持不变
宽高关联,包括无关联,宽关联,高关联和全关联,当父节点宽高改变时,UI宽高随之变化
Button
设置全视图大小
bool
是否激活

函数

获取UI的全局位置

事件

SBXSignalRollOver (SandboxNode node, bool isOver, Vector2 vector2)
拖住滑动或鼠标滚轮结束
SBXSignalRollOut (SandboxNode node, bool isOut, Vector2 vector2)
拖住滑动或鼠标滚轮超出UI布局范围
SBXSignalTouchBegin (SandboxNode node, bool isTouchBegin, Vector2 vector2, int int)
触摸事件开始
SBXSignalTouchEnd (SandboxNode node, bool isTouchEnd, Vector2 vector2, int int)
触摸事件结束
SBXSignalTouchMove (SandboxNode node, bool isTouchMove, Vector2 vector2, int int)
触摸移动
SBXSignalClick (SandboxNode node, bool isClick, Vector2 vector2, int int)
点击事件

代码示例

--创建ui布局
local root = SandboxNode.new('UIRoot', game.WorkSpace)
root.Name = 'uiroot'
--创建图片
local image1 = SandboxNode.new('UIImage', game.WorkSpace.uiroot)
image1.Name = 'image'
image1.Visible = true
image1.Icon = 'ui\\mobile\\texture0\\common\\board_activity_box_white.png'
image1.Size = Vector2.new(500, 200)
image1.Pivot= Vector2.new(0, 0)
image1.LayoutHRelation = Enum.LayoutHRelation.Left
image1.LayoutVRelation= Enum.LayoutVRelation.Top
image1.LayoutSizeRelation= Enum.LayoutSizeRelation.Both

image1.RollOver:connect(function(node,issuccess,mousepos)
	print('you RollOver me')
	print('RollOver pos:'..mousepos.x..' '..mousepos.y)
end)
image1.RollOut:connect(function(node,issuccess,mousepos)
	print('you RollOut me')
	print('RollOut pos:'..mousepos.x..' '..mousepos.y)
end)
image1.TouchBegin:connect(function(node,issuccess,mousepos)
	print('you TouchBegin me')
	print('TouchBegin pos:'..mousepos.x..' '..mousepos.y)
end)
image1.TouchMove:connect(function(node,issuccess,mousepos)
	print('you TouchMove me')
	print('TouchMove pos:'..mousepos.x..' '..mousepos.y)
end)
image1.TouchEnd:connect(function(node,issuccess,mousepos)
	print('you TouchEnd me')
	print('TouchEnd pos:'..mousepos.x..' '..mousepos.y)
end)
image1.Click:connect(function(node,issuccess,mousepos)
	print('you Clickme')
	print('Clickme pos:'..mousepos.x..' '..mousepos.y)
end)
Last Updated: