布局接口(Layout)
脚本化布局(Layout)可像 节点(Node) 一样工作, 但同时还能够适配通过 resize 提供的布局盒。 它也可以具有内在尺寸:通过 measure 函数报告期望尺寸,允许宿主布局尝试适配其大小。
更多信息请参阅 布局脚本(Layout Scripts)。
方法(Methods)
measure
measure(self: T) -> Vector
当提供此方法时,此布局可以具有内在尺寸/请求特定大小。这并非保证,因为布局可能有最小/最大尺寸限制。在测量后,会以授予的尺寸调用 resize。
-- 在 resize 时测量布局的计算尺寸
function measure(self: MyLayout): Vector
return Vector.xy(100, 100)
end
resize
resize(self: T, size: Vector) -> ()
保证在初始设置尺寸时调用,并在尺寸变化时也会调用。
-- 当布局根据内容调整大小时调用
-- 这仅适用于适应类型为 Hug 的布局
function resize(self: MyLayout, size: Vector)
print('Resize:', size)
end