简易虚拟培训系统-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. 运行结果
相关推荐
丁小未18 小时前
Unity AssetBundle商业化项目资源方案
unity·游戏引擎·assetbundle·unity框架
unityのkiven21 小时前
通过 Unity 实现杀戮尖塔2式卡牌系统与机制
unity·游戏引擎
郝学胜-神的一滴21 小时前
中级OpenGL教程 020:巧用数组与循环实现多点点光源渲染,告别冗余代码重构方案
c++·unity·游戏引擎·godot·图形渲染·unreal
春卷同学1 天前
HarmonyOS掌上记账APP开发实践第29篇:条件渲染与 ForEach — 动态 UI 的构建策略
ui·华为·harmonyos
qq_170264751 天前
unity的锁帧和垂直同步
unity·游戏引擎
小小测试开发1 天前
Midscene.js:14K Stars 视驱 UI 自动化框架,用截图替代 DOM 选择器写测试
javascript·ui·自动化
不吃辣4901 天前
从0-1学习导航页面布局优化和搭建
ui·平面·前端框架
承渊政道1 天前
飞算Java炫技赛:Java×Unity数字孪生园区平台的从零落地记录
java·开发语言·unity·技术分享·vibe coding·飞算javaai·飞算java ai炫技赛
unityのkiven1 天前
Unity 共享材质修改问题与 MaterialPropertyBlock 解决方案
unity·游戏引擎·材质
丁小未1 天前
Unity 极致高效的IM设计方案教程
unity·性能优化·游戏引擎·im