聚合物 StyleRules 可以與 DataModel 樹狀結構鏈結,以應用樣式屬性到實例。請注意,StyleSheet 可能在 DataModel 之外存在,但在此情況下無法派生或鏈接到DataModel樹。
概要
方法
返回一個其他的 StyleSheets 陣列,其中 StyleSheet 來自 StyleRules 並提供代幣定義。
將 StyleSheet 設為從一個或多個 StyleSheets 中派生 StyleRules 和代幣定義。
返回一個相關的 StyleRules 陣列。
插入新的 StyleRule 到規則陣列中。
與 InsertStyleRule() 相似,但可讓您一次宣言並設置多個 StyleRules。
屬性
方法
GetDerives
Instances
返回一個其他的 StyleSheets 陣列,其中 StyleSheet 來自 StyleRules 並提供代幣定義。
返回
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
請注意,如果您使用 風格編輯器 創建設計,則 風格表 表在 設計 文件夾中的 ReplicatedStorage 將包含一個 StyleDerive 到 基本風格表 也在 設計 文件夾中。當設置派生時使用 時,請確保在 陣列中將基礎風格表包含在最低優先級的位置。
參數
derives: Instances
其他 Array 的 StyleSheets 來得到 StyleRules 和代幣定義。
返回
()
屬性 繼承自 StyleBase
活動
屬性 繼承自 StyleBase