Unity中的CanvasGroup组件的显示隐藏

在Unity中,CanvasGroup 组件用于控制一组UI元素的透明度、交互性和是否可被射线检测。通过调整 CanvasGroup 的属性,可以轻松实现UI元素的显示和隐藏。

主要属性

  • Alpha : 控制UI元素的透明度。值为 0 时完全透明,值为 1 时完全不透明。

  • Interactable : 控制UI元素是否可交互。设置为 false 时,UI元素不可点击或交互。

  • Blocks Raycasts : 控制UI元素是否阻挡射线检测。设置为 false 时,UI元素不会阻挡射线检测。

显示和隐藏UI元素

通过调整 CanvasGroupAlphaInteractableBlocks Raycasts 属性,可以实现UI元素的显示和隐藏。

显示UI元素
cs 复制代码
   //显示界面 (组件) 
    public void maxGroup(CanvasGroup group)
    {
        group.alpha = 1;             // 完全不透明
        group.interactable = true;   // 可交互
        group.blocksRaycasts = true; // 阻挡射线检测
    }
隐藏UI元素
cs 复制代码
    //隐藏界面 (组件)
    public void minGroup(CanvasGroup group)
    {
        group.alpha = 0;             // 完全透明
        group.interactable = false;  // 不可交互
        group.blocksRaycasts = false;// 不阻挡射线检测
    }

通过 CanvasGroup 组件,你可以轻松控制UI元素的显示和隐藏,同时还能管理其交互性和射线检测行为。这种方法比直接启用或禁用 GameObject 更加灵活,尤其是在需要渐变效果或部分交互的情况下。

相关推荐
Yueeyuee_2 小时前
【C#学习Day16笔记】XML文件、 事件Event 、Json数据
笔记·学习·c#
钢铁男儿5 小时前
C# 枚举器和迭代器(常见迭代器模式)
数据库·c#·迭代器模式
枫景Maple7 小时前
Shader开发(六)什么是着色器
游戏引擎·着色器
R-G-B7 小时前
【05】VM二次开发——模块参数配置--带渲染/不带渲染(WinForm界面调用 模块参数配置)
c#·vm二次开发·vm模块参数配置·vm在winform界面调用
向宇it9 小时前
【unity小技巧】封装unity适合2D3D进行鼠标射线检测,获取鼠标位置信息检测工具类
游戏·3d·unity·游戏引擎
R-G-B14 小时前
【12】大恒相机SDK C#开发 ——多相机开发,枚举所有相机,并按配置文件中的相机顺序 将所有相机加入设备列表,以便于对每个指定的相机操作
c#·大恒相机sdk·大恒多相机开发·大恒多相机枚举·大恒多相机指定顺序
R-G-B14 小时前
【13】大恒相机SDK C#开发 —— Fom1中实时处理的8个图像 实时显示在Form2界面的 pictureBox中
c#·大恒相机sdk·图像实时显示在另一个界面
年少无知且疯狂15 小时前
【Unity】实现小地图
unity·游戏引擎
AA陈超15 小时前
虚幻引擎5 GAS开发俯视角RPG游戏 #06-11:游戏后效果执行
c++·游戏·ue5·游戏引擎·虚幻
徐子竣19 小时前
[学习记录]Unity-Shader-常量缓冲区(CBUFFER)
学习·unity·游戏引擎