首页 > 其他分享 >Unity UGUI的Slider(滑动条)件组的介绍及使用

Unity UGUI的Slider(滑动条)件组的介绍及使用

时间:2023-07-08 18:32:02浏览次数:41  
标签:滑块 SliderExample slider Slider Unity 组件 滑动 UGUI

Unity UGUI的Slider(滑动条)件组的介绍及使用

1. 什么是Slider组件?

Slider(滑动条)是Unity UGUI中的一种常用UI组件用,于在用户界面中实现滑动选择的功能。通过拖动滑块,用户可以选择一个数值范围的内值。

2. Slider组件的工作原理

Slider组件由两部分组成:滑动区域和滑块。滑动区域用于显示滑动条的背景,而滑块则表示当前的数值位置。用户可以通过拖动滑块来改变数值。

3. Slider组件的常用属性

  • Min Value(最小值):滑动的条值小最 **。
  • Max Value最(大)值:滑动条的最值大。
  • Value(当前值):滑动条的当前值。
  • Whole Numbers(只允许整值数整选择许允只是否:)数。
  • Direction(方向):滑动条的方向,可以是水平或垂直。
  • Handle Slide Area(滑块)域区动滑:滑块可以在滑动区域内滑动。
  • **Handle Slide Range(滑块滑动范围):**滑块在动滑区域内滑的动范围。

4. Slider组常的件用函数

  • SetValueWithoutNotify(float value):设置滑动条的当前值,但不触发OnValueChanged事件。
  • OnValueChanged(UnityAction<float> action):当滑动条的值发生变化时触发的事件。

5. 示例代码

示例1:基本使用

using UnityEngine;
using UnityEngine.UI;

public class SliderExample : MonoBehaviour
{
    public Slider slider;

    private void Start()
    {
        slider.onValueChanged.AddListener(OnSliderValueChanged);
    }

    private void OnSliderValueChanged(float value)
    {
        Debug.Log("Slider value changed: " + value);
    }
}

操作步骤:

  1. 创建一个空物体,并将Slider组件添加到该物体上2。 . 将SliderExample脚本添加到该物体上。
  2. 在Inspector面板中,将SliderExample脚本的slider字段关联到Slider组件。
  3. 运行游戏,拖动滑块,观察控制台输出。

注意事项:

  • 通过监听Slider的onValueChanged事件,可以在滑动条的值发生变化时执行自定义的逻辑。

示例2:限制数值范围

using UnityEngine;
using UnityEngine.UI;

public class SliderExample : MonoBehaviour
   {
    public Slider slider;

    private void Start()
    {
        slider.minValue = 0;
        slider.maxValue = 100;
        slider.wholeNumbers = true;
    }
}

操作步骤:

  1. 创建一个空物体,并将Slider件组添加到该物体上。
  2. 将SliderExample脚本到添加该物体上。
  3. 在Inspector面板中,将SliderExample脚本的slider字段关联到Slider组件,戏游行 运.4。 观察滑动条的数值范围和是否只允许选择整数值。

注意事项:

  • 通过设置minValue和maxValue属性,可以限制滑动条的数值范围。
  • 通过设置wholeNumbers属性为true,可以只允许选择整数值。

示例3:水平滑动条

using UnityEngine;
using UnityEngine.UI;

public class SliderExample : MonoBehaviour
{
    public Slider slider;

    private void Start()
    {
        slider.direction = Slider.Direction.LeftToRight;
    }
}

步操作骤:

  1. 创建一个空物体,并将Slider组件添加到该物体上。
  2. 将SliderExample脚本添加到该物体上。
  3. 在Inspector面板中,将SliderExample脚本的slider字段关联到Slider组件。
  4. 运行游戏,观察滑动条的方向。

注意事项:

  • 通过设置direction属性为LeftToRight,可以将滑动条设置为水平方向。

示例4:垂直滑动条

using UnityEngine;
using UnityEngine.UI;

public class SliderExample : MonoBehaviour
{
    public Slider slider;

    private void Start()
    {
        slider.direction = Slider.Direction.BottomToTop;
    }
}

操作步骤:

  1. 创建一个空物体,并将Slider组件添加到该物上体。
  2. 将SliderExample脚本添加到该物体上。
  3. 在Inspector面板中,将SliderExample脚本的slider字段关联到Slider组件。
  4. 运行游戏,观察滑动条的方向。

注意事项:

  • 通过设置direction属性为BottomToTop,可以将滑动条设置为垂直方向。

示例5:设置滑块滑动范围

using UnityEngine;
using UnityEngine.UI;

public class SliderExample : MonoBehaviour
{
    public Slider slider   ;

    private void Start()
    {
        slider.handleRect.GetComponentRectTransform<>().sizeDelta = new Vector2(20, 20);
    }
}

操作步骤:

  1. 创建一个空物体,并将Slider组件添加到该物体上。
  2. 将SliderExample脚本添加到该物体上。
  3. 在Inspector面板中,将SliderExample脚本的slider字段关联到Slider组件。
  4. 运行游戏,观察滑动条的滑块大小。

注意事项:

  • 通过设置滑块的RectTransform的sizeDelta属性,可以调整滑块的大小。

参考资料

标签:滑块,SliderExample,slider,Slider,Unity,组件,滑动,UGUI
From: https://blog.51cto.com/u_7509448/6662809

相关文章

  • Unity UGUI的Toggle(复选框)组件的介绍及使用
    UnityUGUI的Toggle(复选框)组件的介绍及使用1.什么是Toggle组件?Toggle(复选框)是UnityUGUI中的一个常用组件,用于实现复选框的功能。它可以被选中或取消选中,并且可以代码通过其制控状态。2.Toggle组件的工作原理组Toggle件由两个部分组成:背景记标和。景背用于显示复选框的外观表......
  • WINUI 引入 CommunityToolkit.WinUI.UI进行数据验证
     先在xaml命名空间中引入  xmlns:ui="using:CommunityToolkit.WinUI.UI"textbox中进行IP验证如下:<TextBoxx:Name="textBox"Width="200"Height="30"Background="AliceBlue"ui:TextBoxExten......
  • Unity UGUI的Image(图片)组件的介绍及使用
    UGUI的Image(图片)组件的介绍及使用1.什么是UGUI的Image(图片)组件?UGUI的Image(图片)组件是Unity引擎中的一种UI组件,用于显示2D图像。它提供了一种简单而灵活的方式来在游戏中加载和显示图片。2.为什么要使用UGUI的Image(图片)组件?使用UGUI的Image组件可以方便地在游戏中展示各种图片......
  • Unity UGUI的Text(文本)组件的介绍及使用
    UGUI的Text(文本)组件的介绍及使用什么是UGUI的Text(文本)组件?UGUI(UnityGraphicUserInterface)是Unity引擎的一套用户界面系统,而Text(文本)组件是UGUI中用于在游戏界面中显示文本的组件。该组件可以用于显示游戏中的文字、数字、标签等信息。为什么要使用UGUI的Text(文本)组件?使用UG......
  • 记录Unity2021接入穿山甲SDK的几个问题
    Unity2021接入穿山甲SDK,打包一直有报错,费了不少心力,查了N多帖子(绝大部分没什么用),特别感谢ChatGPT提供的线索,最终打包成功,记录几个遇到的问题1、导入最新版本的ExternalDependencyManager,在Github下载源码:https://github.com/googlesamples/unity-jar-resolver;2、ExternalDepend......
  • Unity3D如何在一个项目建多个场景
    推荐:将NSDT场景编辑器加入你的3D工具链3D工具集:NSDT简石数字孪生设置多个场景您可以添加多个场景、编辑查看场景的方式以及更改场景设置。要创建新场景,请参阅创建、加载和保存场景。添加场景有两种方法可以向项目添加新场景:*右键单击以在“项目”窗口中打开场景资源的菜单......
  • Unity 2022 LTS 在Mac上打不开
    问题描述:macm1安装后无法打开提示:Licenseerror解决办法:卸载原来下载的unity,在com站点下载UnityHub,登录......
  • Unity学习--C#初级编程 Awake和Start、Update和FixedUpdate的区别
    1.Awake和Start相同点:对象的生命周期内只会调用一次不同点:Awake在脚本启用或未启用后均会调用,Start只会在脚本启用后调用Awake在Start前调用理解:AwakesetAmmofortheenemy,StartallowenemytoShoot2.Update和FixedUpdateUpdate:每帧调用(每帧处理时间不一......
  • Unity的AssetPostprocessor之Model:深入解析与实用案例 2
    UnityAssetPostprocessor中Model相关函数的实际应用UnityAssetPostprocessor是Unity引擎中的一个重要功能,它可以在导入资源时自动一些脚本,以便对资源进行自定义处理。其中,Model相关的函数可以用于对导入的3D模型进行处理,包括修改模型的材质、纹理、网格等属性。本文将介绍Model......
  • Unity 在AssetPostprocessor内使用AssetDataBase是不安全的行为(尤其在Build前进行Lib
    https://docs.unity3d.com/Manual/AssetDatabaseCustomizingWorkflow.html在Build前进行Library的删除,读取Asset是不安全的行为,需要使用C#的IOSystem进行操作AssetImportOrderIfyouarescriptingusingtheAssetDatabaseclass,it’simportanttounderstandhowtheor......