Files
2026-02-21 16:45:37 +08:00

79 lines
2.0 KiB
C#

using UnityEngine;
using UnityEngine.UI;
public class DebugUISample : MonoBehaviour
{
private bool inMenu;
private Text sliderText;
private void Start()
{
DebugUIBuilder.instance.AddButton("Button Pressed", LogButtonPressed);
DebugUIBuilder.instance.AddLabel("Label");
RectTransform rectTransform = DebugUIBuilder.instance.AddSlider("Slider", 1f, 10f, SliderPressed, true);
Text[] componentsInChildren = rectTransform.GetComponentsInChildren<Text>();
sliderText = componentsInChildren[1];
sliderText.text = rectTransform.GetComponentInChildren<Slider>().value.ToString();
DebugUIBuilder.instance.AddDivider();
DebugUIBuilder.instance.AddToggle("Toggle", TogglePressed);
DebugUIBuilder.instance.AddRadio("Radio1", "group", delegate(Toggle t)
{
RadioPressed("Radio1", "group", t);
});
DebugUIBuilder.instance.AddRadio("Radio2", "group", delegate(Toggle t)
{
RadioPressed("Radio2", "group", t);
});
DebugUIBuilder.instance.AddLabel("Secondary Tab", 1);
DebugUIBuilder.instance.AddDivider(1);
DebugUIBuilder.instance.AddRadio("Side Radio 1", "group2", delegate(Toggle t)
{
RadioPressed("Side Radio 1", "group2", t);
}, 1);
DebugUIBuilder.instance.AddRadio("Side Radio 2", "group2", delegate(Toggle t)
{
RadioPressed("Side Radio 2", "group2", t);
}, 1);
DebugUIBuilder.instance.Show();
inMenu = true;
}
public void TogglePressed(Toggle t)
{
Debug.Log("Toggle pressed. Is on? " + t.isOn);
}
public void RadioPressed(string radioLabel, string group, Toggle t)
{
Debug.Log("Radio value changed: " + radioLabel + ", from group " + group + ". New value: " + t.isOn);
}
public void SliderPressed(float f)
{
Debug.Log("Slider: " + f);
sliderText.text = f.ToString();
}
private void Update()
{
if (OVRInput.GetDown(OVRInput.Button.Two) || OVRInput.GetDown(OVRInput.Button.Start))
{
if (inMenu)
{
DebugUIBuilder.instance.Hide();
}
else
{
DebugUIBuilder.instance.Show();
}
inMenu = !inMenu;
}
}
private void LogButtonPressed()
{
Debug.Log("Button pressed");
}
}