58 lines
1.7 KiB
C#
58 lines
1.7 KiB
C#
|
|
using UnityEngine;
|
||
|
|
using UVC.UI.Window;
|
||
|
|
using UVC.UI.List.Accordion;
|
||
|
|
|
||
|
|
public class AccordionSample : MonoBehaviour
|
||
|
|
{
|
||
|
|
[SerializeField]
|
||
|
|
private AccordionWindow accordionWindow;
|
||
|
|
|
||
|
|
void Start()
|
||
|
|
{
|
||
|
|
if (accordionWindow == null)
|
||
|
|
{
|
||
|
|
accordionWindow = FindObjectOfType<AccordionWindow>();
|
||
|
|
}
|
||
|
|
|
||
|
|
var data = new AccordionData();
|
||
|
|
|
||
|
|
// Horizontal section
|
||
|
|
var sec1 = new AccordionSectionData
|
||
|
|
{
|
||
|
|
Title = "Settings",
|
||
|
|
IsExpanded = true,
|
||
|
|
LayoutType = AccordionItemLayoutType.Horizontal
|
||
|
|
};
|
||
|
|
sec1.Items.Add(new AccordionHorizontalItemData
|
||
|
|
{
|
||
|
|
Head = AccordionContentSpec.FromImage(null),
|
||
|
|
Content = AccordionContentSpec.FromText("Graphics"),
|
||
|
|
Tail = AccordionContentSpec.FromIconButton(null, () => Debug.Log("Edit Graphics"))
|
||
|
|
});
|
||
|
|
sec1.Items.Add(new AccordionHorizontalItemData
|
||
|
|
{
|
||
|
|
Head = AccordionContentSpec.FromImage(null),
|
||
|
|
Content = AccordionContentSpec.FromText("Audio"),
|
||
|
|
Tail = AccordionContentSpec.FromIconButton(null, () => Debug.Log("Edit Audio"))
|
||
|
|
});
|
||
|
|
data.Sections.Add(sec1);
|
||
|
|
|
||
|
|
// Grid section
|
||
|
|
var sec2 = new AccordionSectionData
|
||
|
|
{
|
||
|
|
Title = "Presets",
|
||
|
|
IsExpanded = true,
|
||
|
|
LayoutType = AccordionItemLayoutType.Grid
|
||
|
|
};
|
||
|
|
sec2.Items.Add(new AccordionGridItemData { Caption = "Low" });
|
||
|
|
sec2.Items.Add(new AccordionGridItemData { Caption = "Medium" });
|
||
|
|
sec2.Items.Add(new AccordionGridItemData { Caption = "High" });
|
||
|
|
data.Sections.Add(sec2);
|
||
|
|
|
||
|
|
if (accordionWindow != null)
|
||
|
|
{
|
||
|
|
accordionWindow.SetData(data);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|