简易虚拟培训系统-UI控件的应用5

目录

Toggle控件简介

示例-使用Toggle组实现主轴速度选择


本篇介绍UI控件Toggle,尝试一个小示例-使用单选框实现速度的选择控制。

Toggle控件简介

  1. Toggle的结构如下:最重要的Toggle组件挂在Toggle节点上,下面的Image组件用于显示单选框的背景和勾选的图片,Label上挂载的Text组件用于修改Toggle的显示文本

  1. Toggle组件的重要参数:最重要的就是"IsOn"参数,它是一个bool值,判断当前Toggle是否被勾选。
  1. Toggle组:当Toggle选项较多时,可以在所有Toggle节点之上建立一个ToggleGroup父节点,挂载ToggleGroup组件,当需要实现单选时,还可以勾选上AllowSwitchOff选项

还需要在每一个Toggle组件的Group变量中,载入父节点ToggleGroup

示例-使用Toggle组实现主轴速度选择

  1. 制作UI界面:在上一篇主轴控制的面板后加上速度选择的3个Toggle
  1. 修改上一篇主轴控制的代码mainAxisCtrl.cs
cs 复制代码
public class mainAxisCtrl : MonoBehaviour
{//主轴运动控制
    public float axisSpeed = 20;   //主轴的旋转速度
    public Slider onOffCtrlSlider; //开关Slider
    public GameObject mainAxis;    //载入主轴的节点
    public Toggle[] toggles;   //数组载入toggle组

    void Update()
    {
        if (onOffCtrlSlider.value == 1)
        {
            var speedIndex = 1;
            for (int i = 0; i < toggles.Length; i++)
            {//遍历toggles数组,检查哪一个被选中
                if (toggles[i].isOn)
                    speedIndex = i + 1; //得到当前速度的编号
            }
            mainAxis.transform.Rotate(speedIndex*axisSpeed*Time.deltaTime,0, 0);
        }
    }
}
  1. 将脚本挂在空节点Empty上,将新建的3个Toggle控件拖入Toggles数组中
  1. 运行结果
相关推荐
前端不太难6 分钟前
Navigation State 与页面内存泄漏的隐性关系
前端·ui·react
lovingsoft34 分钟前
复用的Vibe Coding 提示词模板(含原型 / MVP、CRUD、UI 组件、调试反馈 4 类场景)
人工智能·ui·敏捷开发
野区捕龙为宠1 小时前
unity 实现3D空间音效特性
3d·unity·游戏引擎
老朱佩琪!1 小时前
Unity外观模式
unity·游戏引擎·外观模式
程序员茶馆2 小时前
【unity】Shader艺术之unity内置变量个性化控制
unity·游戏引擎
深蓝海拓2 小时前
PySide6从0开始学习的笔记(十四)创建一个简单的实用UI项目
开发语言·笔记·python·qt·学习·ui·pyqt
CreasyChan2 小时前
unity射线与几何检测 - “与世界的交互”
算法·游戏·3d·unity·数学基础
CreasyChan2 小时前
unity矩阵与变换 - “空间转换的魔术”
unity·矩阵·c#·游戏引擎
fcm192 小时前
pico之调试unity项目
unity·vr·pico