UIImage
继承自:
描述
UI图片组件。用于显示2D图片,支持多种填充模式、缩放类型和特效功能
属性
string Icon |
|---|
| 图片资源路径 |
FillMethod FillMethod |
|---|
| 填充模式。控制图片的填充显示方式,用于实现进度条、圆形进度等效果,默认值为None |
FillOrigin FillOrigin |
|---|
| 填充原点。控制填充过程的原点,仅在Horizontal与Vertical填充模式下适用。对于每种填充方法,值的意义不同,默认值为Top |
bool FillClockwise |
|---|
| 顺时针填充。仅在Radial360模式下适用,为true时以上方中点为起点顺时针渲染,默认值为false |
float FillAmount |
|---|
| 填充比例。控制填充显示的部分占原来大小的比例,取值范围:0.0-1.0,默认1.0 |
bool IsAutoSize |
|---|
| 自动调整大小。为true时,将节点大小调整为图片原始大小,默认值为false |
float Alpha |
|---|
| 图片透明度。控制图片的透明度,取值范围:0.0-1.0,0.0为完全透明,1.0为完全不透明,默认值为1.0 |
Vector2 ResourceSize |
|---|
| 图片资源原始尺寸。只读属性,显示加载的图片资源的原始宽高 |
ScaleType ScaleType |
|---|
| 图片缩放类型。控制图片在节点中的显示方式:拉伸填充或九宫格缩放 |
Vector4 Scale9Grid |
|---|
| 九宫格缩放参数。Vector4格式(x,y,width,height),定义九宫格的中心区域,仅在ScaleType为Slice时生效 |
bool BlurFilter |
|---|
| 是否启用高斯模糊效果。开启后图片会显示模糊效果,默认值为false |
int BlurSigma |
|---|
| 高斯模糊强度。控制模糊效果的强度,数值越大模糊效果越强,默认值为3 |
bool UIMaskMode |
|---|
| 遮罩模式。当前节点作为父节点的遮罩,用于实现裁剪效果,默认值为false |
代码示例
lua
-- 创建UI根节点
local root = SandboxNode.new("UIRoot", game.WorkSpace)
root.Name = "uiroot"
-- 创建图片组件
local image = SandboxNode.new("UIImage", root)
image.Name = "image"
image.Size = Vector2.new(100, 100)
image.Position = Vector2.new(100, 100)
image.Icon = "sandboxSysId://ui/icon_default_image.png"
image.Alpha = 1.0
image.IsAutoSize = false
image.FillMethod = Enum.EnumFillMethod.Horizontal
image.FillOrigin = Enum.EnumFillOrigin.Top
image.FillAmount = 0.7 -- 70%填充
-- 设置模糊效果
image.BlurFilter = true
image.BlurSigma = 5
-- 动态改变填充量(模拟进度条)
local progress = 0
local function updateProgress()
progress = progress + 0.01
if progress > 1.0 then
progress = 0
end
image.FillAmount = progress
end
-- 每帧更新进度
game:GetService("RunService").RenderStepped:Connect(updateProgress)
-- 切换填充模式
local function toggleFillMethod()
if image.FillMethod == Enum.FillMethod.Horizontal then
image.FillMethod = Enum.FillMethod.Vertical
elseif image.FillMethod == Enum.FillMethod.Vertical then
image.FillMethod = Enum.FillMethod.Radial360
else
image.FillMethod = Enum.FillMethod.Horizontal
end
end
-- 点击切换填充模式
image.Click:Connect(toggleFillMethod)