Unity UGUI Button 无法点击问题一例
理论上,只要一个按钮自己这一层或者子节点有一个控件勾选了RaycastTarget,并且按钮为Interactable的.并且不被其他可以点击的控件阻挡,那么这个按钮就可以被点击
在调一个界面时发现一个诡异的问题,有个按钮死活无法点击,EventSystem无法检测到.旁边的一个按钮却是ok的
对比了下,发现两者的区别是:
可点击的 x轴旋转-180
不可点击 无旋转
将不可点击的旋转-180,发现可以点击了
排查父节点,发现父节点挂了个Image为了做表现,旋转了180.
既然确定问题是旋转导致的,google了一下,发现了帖子:
https://forum.unity.com/threads/button-with-rotation-y-180-can-not-click.293482/
确认UGUI无法接受反向按钮的点击.
在和同事讨论时,同事提醒,有个开关是否接受反转的点击,即 Graphic Raycaster 的 Ignore Reversed Graphics这个选项

当然这个选项默认是勾选的,不接受反向点击,为点击时检测的性能考虑.
所以这种情况下,还是要靠做界面时留心下旋转.不建议关闭这个开关
后面试了下,哪怕把这个勾关掉,如果我旋转90度自然也是无法接受点击的
看了下相关源码,是按这个Gameobject的Vector3.forward去算的.所以还是要小心
当然可以考虑写一个脚本,检测这种forward是不是面向屏幕的,并校正
一般来说,没有可点击的物体是背对屏幕或者是90度旋转的吧.
Unity UGUI Button 无法点击问题一例的更多相关文章
- unity, ugui button 禁止重复点击
如上图,button名称为btn_sim,当点击button后,开始播放zoomToTarget动画.为了防止在动画播放过程中再次点击button导致动画被打断,希望当首次点击button后butto ...
- Unity UGUI按钮添加点击事件
1. 可视化创建及事件绑定 # 1 : 通过 Hierarchy 面板创建 UI > Button. 2 : 创建一个脚本 TestClick.cs, 定义了一个 Click 的 public ...
- 【Unity游戏开发】UGUI不规则区域点击的实现
一.简介 马三从上一家公司离职了,最近一直在出去面试,忙得很,所以这一篇博客拖到现在才写出来.马三在上家公司工作的时候,曾处理了一个UGUI不规则区域点击的问题,制作过程中也有一些收获和需要注意坑,因 ...
- Unity UGUI基础之Button
UGUI Button,可以说是真正的使用最广泛.功能最全面.几乎涵盖任何模块无所不用无所不能的组件,掌握了它的灵巧使用,你就几乎掌握了大半个UGUI! 一.Button组件: Interactabl ...
- Unity UGUI
超详细的基础教程传送门:(持续更新中) Unity UGUI之Canvas&EventSystem:http://blog.csdn.net/qq992817263/article/detai ...
- Unity UGUI鼠标穿透UI问题(Unity官方的解决方法)
简述 最近在用UGUI的时候遇到了鼠标穿透的问题,就是说在UGUI和3D场景混合的情况下,点击UI区域同时也会 触发3D中物体的鼠标事件.比如下图中 这里给Cube加了一个鼠标点击改变颜色的代码,如下 ...
- Unity UGUI Layout自动排版组件用法介绍
Unity UGUI布局组件 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享 ...
- android ListView中的Item有Button时候点击异常处理
1.当ListView中有Button的时候往往会遇到很多问题,比较常见的一个问题是: 假设:在ListView中有N个Item当点击其中某个Item中的Button的时候,需要改变当前Button的 ...
- ios 添加到cell 上的button点击无效!扩大button的点击区域(黑魔法)
一般情况下点击效果都是正常的!要不然你对它做了什么?一般细心的小伙伴都没有遇到这种情况,但是呢! 当然我是二班的!在这里我主要讲两个问题,解决问题和普及魔法. 一.普及问题(button在cell上点 ...
随机推荐
- mp4文件格式解析(转)
mp4文件格式解析 MP4文件格式带数据详解 MP4文件格式的解析,以及MP4文件的分割算法
- Java并发包线程池之ThreadPoolExecutor
参数详解 ExecutorService的最通用的线程池实现,ThreadPoolExecutor是一个支持通过配置一些参数达到满足不同使用场景的线程池实现,通常通过Executors的工厂方法进行配 ...
- 分析CSS布局神器
只要在页面下加入如下css,整个css布局就清晰了 * { background-color: rgba(255,0,0,.2); } * * { background-color: rgba(0,2 ...
- Oracle查看表结构的方法【我】
Oracle查看表结构的方法 方法一: 在命令窗口下输入 DESC table_name; 回车 方法二: 在sql窗口下 SELECT DBMS_METADATA.GET_ ...
- 【418】C语言ADT实现Quack(stack+queue)
quack.h #include <stdio.h> #include <stdlib.h> #include <assert.h> typedef struct ...
- SpringMVC拦截器工作流程图
- Spring Cloud(7.1):安装Kafka和Redis
Kafka安装 (1)从官方(http://kafka.apache.org/downloads)下载安装包.kafka安装包和一般安装包的命名方式不一样,我们看一个kafka包命名:kafka_2. ...
- iOS面试-深拷贝和浅拷贝
浅copy:实际上的内存只有一份 任何copy都只是指向这个内存的一个引用 深copy:原始数据有一份 每一个copy的对象不再是引用 而是内容大小一样 内存地址不同的独立对象 系统的非容器类对象 c ...
- 日后成为人工智能领域的小大佬,立个flag~
时间过的很快,仿佛就在昨天我还是一个机械在校硕士.但现在我已经开始在互联网企业中上班了,第一周的小任务进行简单的数据处理,自己搞的很不好,路还很长,但来日方长! 这周开始学习爬虫,最近会很忙,希望能改 ...
- 【计算机视觉】detection/region/object proposal 方法综述文章
目录(?)[-] Papers 大纲 各种OP方法的回顾 Grouping proposal methods Window scoring proposal methods Aliternate pr ...