说明,这种直接设置alpha的方法跟go的setActive(false)性能差不多,只少了激活和冻结冻结调用


http://blog.csdn.net/qq_28824335/article/details/48310709
Canvas Group可以用来控制一组不需要个别控制的UI元素的某些方面,CanvasGroup的属性会影响他所有children的GameObject

其中有四个选项:
-Alpha:这个选项很多组件都有,用处也是一样的,在美术中,这个叫做Alpha通道的东东是用来控制透明度的,他的值从0到1.0是完全透明,1是完全不透明;
-Interactable确认该组件是否接受输入,当他被设置为false时,交互功能将被禁用;
-Block Raycasts是否让该组件像collider一样接受射线检测?你需要在依赖于Canvas的图形射线检测者上唤醒射线检测方法。这个不会作用于Physics.Raycast;
-Ignore Parent Groups(忽略父级团)是否响应父级group的方法

细节:
Canvas Group的经典使用:
-在窗口的GameObject上添加一个CanvasGroup,通过控制它的Alpha值来淡入或淡出整个窗口;
-通过给父级GameObject添加一个CanvasGroup并设置它的Interactable值为false来制作一整套没有交互(灰色)的控制;

-通过将元素或元素的一个父级添加CanvasGroup并设置BlockRaycasts值为false来制作一个或多个不阻止鼠标事件的UI元素

应用:(重要的地方写大字)
结合后面两点或者1,3点,都可以实现很牛叉的功能
比如说游戏里某些情况某个按钮(或者其他UI)是不能点的,而另外一些情况可以点,这样就可以通过动态改变这个组件的BlocksRaycasts值以及Interactable来实现
再比如说游戏里点击某个按钮要让这个按钮不可点并逐渐消失掉,当然啦,也可以让别的东西消失啦,这就可以通过改变alpha值来实现


恩,CanvasGroup这个组件已经被我玩坏啦~。~

至此,canvas的四个组件(Canvas、Canvas Render、Canvas Scaler、Canvas Group)都学完了,勃主的装逼之路越走越远了哈!
抽空再补上例子。。。

最新文章

  1. ef
  2. jQuery 插件简单模板
  3. HTML编码规则、CSS属性声明顺序--简介
  4. (转) 解决ssh的"Write failed: Broken pipe"问题
  5. .NET垃圾回收 – 非托管资源
  6. i = i++ 在java字节码层面的分析
  7. ssh登录过程详细介绍
  8. OpenStack - liberty CentOS 7
  9. Linux使用系统光盘作为YUM源
  10. [DeeplearningAI笔记]ML strategy_1_2开发测试集评价指标
  11. ToroiseGit提交代码上传到阿里云的Gitlab
  12. js加密php解密---jsencrypt
  13. IdentityServer4 中文文档 -8- (快速入门)设置和概览
  14. 剖析RAC中的@weakify、@strongify
  15. Postgresql 珍藏级文章
  16. Root Motion的脚本处理
  17. 状压dp2
  18. Lora通信解决方案对比
  19. Jmeter非GUI运行,生成html报告
  20. Easyui里面动态设置输入框的可见性

热门文章

  1. 流畅的python学习笔记:第十三章:重载运算符__add__,__iadd__,__radd__,__mul__,__rmul__,__neg__,__eq__,__invert__,__pos__
  2. 获取系统 SID
  3. Thinkphp2.2 config.inc.php常用配置
  4. NiFi汉化
  5. 51nod 1022 石子归并 V2 —— DP四边形不等式优化
  6. Ubuntu 更新/安装nodejs
  7. 苹果AppStore如何申请加急审核
  8. css的核心
  9. rand()与srand()
  10. C#SocketAsyncEventArgs实现高效能多并发TCPSocket通信 (服务器实现)