Unity中的CanvasGroup组件的显示隐藏

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

主要属性

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

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

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

显示和隐藏UI元素

通过调整 CanvasGroup 的 Alpha、Interactable 和 Blocks 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 更加灵活,尤其是在需要渐变效果或部分交互的情况下。

相关推荐
呆呆敲代码的小Y14 分钟前
【实战精选面试题】Unity精选面试题详细解答,按模块整理汇总
人工智能·游戏·unity·游戏引擎
吃一碗粉只付一碗钱9 小时前
12-给SPA友好的401和403响应
c#·状态模式
小贺儿开发10 小时前
《流光绘忆》Unity 沉浸式光影互动
科技·unity·ai·程序员·工具·互动·光影
Aman198414 小时前
Claude Code做Unity项目移植(一):从零散工具到团队式
unity·游戏开发·vibe coding·claude code·项目迁移
caimouse15 小时前
MonoDevelop 编译用户应用程序时调用的是哪个编译器
c#
地狱为王16 小时前
Unity使用VoxLock实现语音隔离
unity·游戏引擎·音频处理·voxlock
will_net17 小时前
apollo 站点部署&C#接入
开发语言·c#·apollo
Jmyd012319 小时前
博物馆数字展厅系统架构设计:实景采集到云渲染全链路
unity·系统架构·博物馆·数字展厅·博物馆数字化
解决小子20 小时前
【虚幻引擎】【GAS】模块详解
游戏引擎·虚幻·gas
一只大鸽子21 小时前
游戏开发笔记0-Godot启动
笔记·游戏引擎·godot