聚合物 StyleRules 可以链接到 DataModel 树,以将样式属性应用到实例。请注意,一个 StyleSheet 可能存在于 DataModel 之外,但在这种情况下无法由此导出或链接到一个 DataModel 树。
概要
方法
返回一个集合 of 其他 从中得到 和代币定义。
将 StyleSheet 设置为从一个或多个其他 StyleSheets 中得到 StyleRules 和代币定义。
返回一组相关的 StyleRules 。
插入新的 StyleRule 到规则阵列中。
与 InsertStyleRule() 类似,但允许一次宣言和设置多个 StyleRules。
属性
方法
GetDerives
Instances
返回一个集合 of 其他 从中得到 和代币定义。
返回
Instances
其他 StyleSheets 的阵列。
SetDerives
()
将 StyleSheet 设置为从列表中的一个或多个其他 StyleSheets 中得到 StyleRules 和代币定义。该方法生成适当的 StyleDerive 实例,将优先级设置为确定指定派生。
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local coreSheet = ReplicatedStorage:FindFirstChild("CoreSheet")
-- 创建一个代币风格表
local tokensSheet = Instance.new("StyleSheet")
tokensSheet.Name = "Tokens"
tokensSheet.Parent = ReplicatedStorage
-- 在代币表中设置代币(属性)
tokensSheet:SetAttribute("LightGray", Color3.new(0.9, 0.9, 0.9))
tokensSheet:SetAttribute("DarkGray", Color3.new(0.2, 0.2, 0.2))
-- 创建主题风格表
local lightThemeSheet = Instance.new("StyleSheet")
lightThemeSheet.Name = "LightTheme"
lightThemeSheet:SetAttribute("Background", "$LightGray")
lightThemeSheet.Parent = ReplicatedStorage
local darkThemeSheet = Instance.new("StyleSheet")
darkThemeSheet.Name = "DarkTheme"
darkThemeSheet:SetAttribute("Background", "$DarkGray")
darkThemeSheet.Parent = ReplicatedStorage
-- 将主题表设置为从代币表中派生
lightThemeSheet:SetDerives({ tokensSheet })
darkThemeSheet:SetDerives({ tokensSheet })
local themeDerive = Instance.new("StyleDerive")
themeDerive.Parent = coreSheet
themeDerive.StyleSheet = lightThemeSheet
-- 函数可动态更改核心表的派生主题
local function changeTheme()
if themeDerive.StyleSheet == lightThemeSheet then
themeDerive.StyleSheet = darkThemeSheet
elseif themeDerive.StyleSheet == darkThemeSheet then
themeDerive.StyleSheet = lightThemeSheet
end
end
请注意,如果您使用 风格编辑器 创建了设计,那么 设计文件夹 中的 风格表 表将包含一个 到 基础风格表 的链接,也在 设计文件夹 中。当设置派生时使用 时,请确保将基础样式表包含在 阵列中的最低优先级位置。
参数
derives: Instances
其他 Array 的 StyleSheets 来得到 StyleRules 和代币定义。
返回
()
属性继承自StyleBase
活动
属性继承自StyleBase