From 6891f43baab99bcd82341618cf259dc70d7e8e2e Mon Sep 17 00:00:00 2001
From: MuHua-123 <136542559+MuHua-123@users.noreply.github.com>
Date: Wed, 15 Jul 2026 14:55:53 +0800
Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90UISlideButton=E6=B5=8B?=
=?UTF-8?q?=E8=AF=95=E7=94=A8=E4=BE=8B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ModuleUIPage/UISlideButtonTest.cs | 48 +++
.../ModuleUIPage/UISlideButtonTest.cs.meta | 11 +
Assets/SceneManager/SlideButton.meta | 8 +
.../SlideButton/SlideButton.unity | 404 ++++++++++++++++++
.../SlideButton/SlideButton.unity.meta | 7 +
.../GamePage/SlideButtonTemplate1.uxml | 4 +
.../GamePage/SlideButtonTemplate1.uxml.meta | 10 +
.../UI Toolkit/GamePage/SlideButtonTest.uxml | 13 +
.../GamePage/SlideButtonTest.uxml.meta | 10 +
.../UnityThemes/UnityDefaultRuntimeTheme.tss | 2 +
10 files changed, 517 insertions(+)
create mode 100644 Assets/ModuleUI/ModuleUIPage/UISlideButtonTest.cs
create mode 100644 Assets/ModuleUI/ModuleUIPage/UISlideButtonTest.cs.meta
create mode 100644 Assets/SceneManager/SlideButton.meta
create mode 100644 Assets/SceneManager/SlideButton/SlideButton.unity
create mode 100644 Assets/SceneManager/SlideButton/SlideButton.unity.meta
create mode 100644 Assets/UI Toolkit/GamePage/SlideButtonTemplate1.uxml
create mode 100644 Assets/UI Toolkit/GamePage/SlideButtonTemplate1.uxml.meta
create mode 100644 Assets/UI Toolkit/GamePage/SlideButtonTest.uxml
create mode 100644 Assets/UI Toolkit/GamePage/SlideButtonTest.uxml.meta
diff --git a/Assets/ModuleUI/ModuleUIPage/UISlideButtonTest.cs b/Assets/ModuleUI/ModuleUIPage/UISlideButtonTest.cs
new file mode 100644
index 0000000..50a2f6f
--- /dev/null
+++ b/Assets/ModuleUI/ModuleUIPage/UISlideButtonTest.cs
@@ -0,0 +1,48 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using UnityEngine.UIElements;
+using MuHua;
+
+public class UISlideButtonTest : MonoBehaviour {
+ /// 绑定文档
+ public UIDocument document;
+ /// 模板
+ public VisualTreeAsset templateAsset;
+
+ private UISlideButton slideButton;
+
+ /// 根目录文档
+ public VisualElement Root => document.rootVisualElement;
+
+ public VisualElement SlideButton => Root.Q("SlideButton");
+
+ public void Awake() {
+ slideButton = new UISlideButton(SlideButton, Root, templateAsset,
+ (data, element) => new UIData(data, element));
+
+ List datas = new List();
+ datas.Add(new Data { name = "匹配" });
+ datas.Add(new Data { name = "配置" });
+ datas.Add(new Data { name = "招募" });
+
+ slideButton.Create(datas);
+ }
+ public void Update() {
+ slideButton.Update();
+ }
+
+ public class Data : DataSlideButton {
+ public string name;
+ }
+ public class UIData : ModuleUIItem {
+
+ public Button Button => Q