Unity 点击UI与点击屏幕冲突的解决方案
Unity 有点击屏幕进行移动操作,通过Input.GetMouseButtonDown(0)。如果点击到了一些UI上面会触发点击屏幕事件。
引入UnityEngine.EventSystems,用函数判断一下即可
using System.Collections; using System.Collections.Generic; using UnityEngine; using DG.Tweening; using UnityEngine.EventSystems; public class PlayerController : MonoBehaviour { private void Update() { if (EventSystem.current.IsPointerOverGameObject()) return; if (Input.GetMouseButtonDown(0)) { Debug.Log("点击屏幕"); } } }
这个方法会将点击Text的时候也会当作点击UI
将raycast target 取消勾选可以避免。
补充:unity点击UI跟场景不冲突
unity点击UI跟场景不冲突的方法
在射线检测后加!EventSystem.current.IsPointerOverGameObject()即可
需要引入命名空间using UnityEngine.EventSystems;
以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。如有错误或未考虑完全的地方,望不吝赐教。
相关推荐
-
Unity UGUI实现滑动翻页直接跳转页数
本文实例为大家分享了Unity UGUI实现滑动翻页,直接跳转页数的具体代码,供大家参考,具体内容如下 首先看一下最终效果 其实这个功能基本上是老生常谈了,所以代码还是很简单 using UnityEngine; using System.Collections; using UnityEngine.UI; using System.Collections.Generic; using UnityEngine.EventSystems; using System; public class Pa
-
Unity利用UGUI制作提示框效果
本文实例为大家分享了Unity利用UGUI制作提示框的具体代码,供大家参考,具体内容如下 用到的工具DOTween 这个插件很好用的 大家可以去百度搜一下 先看一下效果 先上脚本 using DG.Tweening; using UnityEngine; using UnityEngine.UI; public class ShowTip : MonoBehaviour { public CanvasGroup tips; public void OnClickBtn() { ShowTips(
-
unity 如何判断鼠标是否在哪个UI上(两种方法)
第一种 可以得到UI,再根据名字判断是不是自己自己要点击的UI 其中参数canvas拖入此UI的canvas /// <summary> /// 获取鼠标停留处UI /// </summary> /// <param name="canvas"></param> /// <returns></returns> public GameObject GetOverUI(GameObject canvas) { Poin
-
Unity UGUI实现简单拖拽图片功能
这一篇博客我们来使用 UGUI 实现图片的拖拽功能. 说到拖拽,那必然离不开坐标,UGUI 的坐标有点不一样,它有两种坐标,一种是屏幕坐标,还有一种就是 UI 在Canvas内的坐标(暂时叫做ugui坐标.),这两个坐标是不一样的,所以拖拽是就需要转换.因为鼠标的移动是屏幕坐标,而 UI 的移动是ugui坐标.转换的方法: RectTransformUtility.ScreenPointToLocalPointInRectangle ( - );这个方法可以把屏幕坐标转换成 ugui 坐标.至于
-
Unity3D UI Text得分数字增加的实例代码
Unity3D UGUI Text得分数字增加 代码 一.首先在Hierarchy中创建Text,并绑定脚本. using UnityEngine; using System.Collections; using UnityEngine.UI; **//导入资源库** public class Score : MonoBehaviour { public static Text txt; **//定义静态变量名以用于其他脚本内的引用** public static float x = 0; vo
-
unity实现UI元素跟随3D物体
本文实例为大家分享了unity实现UI元素跟随3D物体的具体代码,供大家参考,具体内容如下 在Canvas不同的渲染模式(RenderMode)下实现UI跟随3D物体 当Canvas.RenderMode为Screen Space-Overlay时 利用WorldToScreenPoint(worldPos)将物体的世界坐标转换成屏幕坐标,实时更新UI的坐标: using UnityEngine; using System.Collections; public class FollowWorl
-
详解IDEA社区版(Community)和付费版(UItimate)的区别
推荐阅读: IntelliJ IDEA 2020最新激活码(亲测有效,可激活至 2089 年) 最新idea2020注册码永久激活(激活到2100年) IntelliJ IDEA 2020.2.3永久破解激活教程(亲测有效) 2020.2 IntelliJ IDEA激活与IDEA2020.2破解详细教程 比对类型 Ultimate(终极版,付费) Community(社区版,免费) 语言支持 Java Java Groovy Groovy Kotlin Kotlin Scala(通过插件) Sc
-
unity 鼠标移入弹出UI的操作
外部调用 show 和Hide方法 using DG.Tweening; using UnityEngine; using UnityEngine.UI; public class ShowInfo : MonoBehaviour { private bool _isshowing = false; public Canvas Canvas; // Use this for initialization void Start() { Hide(); } // Update is called o
-
Unity 点击UI与点击屏幕冲突的解决方案
Unity 有点击屏幕进行移动操作,通过Input.GetMouseButtonDown(0).如果点击到了一些UI上面会触发点击屏幕事件. 引入UnityEngine.EventSystems,用函数判断一下即可 using System.Collections; using System.Collections.Generic; using UnityEngine; using DG.Tweening; using UnityEngine.EventSystems; public class
-
Unity通过代码修改按钮点击效果
本文实例为大家分享了Unity通过代码修改按钮点击效果的具体代码,供大家参考,具体内容如下 效果: 创建一个脚本,挂载到按钮上,主要是实现鼠标移入.移出.按下.抬起等事件的接口 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using UnityEngine.EventSystems; public class ButtonChangeCol
-
vue点击弹窗自动触发点击事件的解决办法(模拟场景)
业务场景:使用vue +element ui 的el-dialog,点击弹窗之后,默认加载第一个按钮的数据进行初始化. div 指令: // 自动触发点击事件 directives:{ trigger:{ inserted(el,binging){ // console.log("自动触发事件") el.click() } } }, PS:下面看下vue 自动触发点击事件 需要,点击左边的列表出详情,但是都需要点击事件,页面进来时,默认触发点击事件 方法一,vue自定义指令 direc
-
js获取鼠标点击的对象,点击另一个按钮删除该对象的实现代码
今天遇到一个很奇葩的需求,是这样的:当我点击文字的时候弹出一个删除按钮,可以删除刚才点击的文字. 诶?当时想了想,没什么难度吧.可是,既然是奇葩的需求怎么可能这么简单. 对,还有一个功能.我并不知道我点了哪个标签,英文可以承载文字的标签太多太多.... 当时我tm就懵逼了.你都不知道要点哪个标签,我怎么去绑定事件?给谁绑定事件? 扯了半天,还是要写.于是就动工了. 我思路是这样的: START 1,首先得获取鼠标点击的对象.(问题是...我怎么知道点了哪个) 那么先写个函数去获取鼠标点击的对象
-
jQuery实现点击DIV同时点击CheckBox,并为DIV上背景色的实例
废话不多说,直接上代码吧 <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>JqueryTest</title> <script src="js/jquery-1.8.3.min.js"></script> <script> $(document).r
-
Vue实现 点击显示再点击隐藏效果(点击页面空白区域也隐藏效果)
平时项目中,经常会做一些下拉菜单等效果,这种效果可能会需要通过一个按钮来控制显示隐藏,并且当点击页面其他空白区域时,也要将其隐藏. 简单写个Demo <!-- 按钮 --> <button @click.stop="ShowHidden = !ShowHidden">显示或隐藏</button> <!-- 下拉列表 --> <div v-if="ShowHidden" @click.stop="&quo
-
vue循环中点击选中再点击取消(单选)的实现
没有展开时 点击展开之后 <div class="flashread_item_box_time"> <span class="moment_time">9分钟前</span> <div class="flashread_item_box_zan"> <span class="flashread_item_box_item"><i class="ico
-
Unity实现鼠标或者手指点击模型播放动画
本文实例为大家分享了unity鼠标或者手指点击模型播放动的具体代码,供大家参考,具体内容如下 using UnityEngine; using System.Collections; public class ClickPlayAnimation : MonoBehaviour { /// <summary> /// 实现功能为点击模型播放动画 /// 使用方法,给模型添加碰撞,添加脚本 /// </summary> bool isPlayAnim = false; // Use
-
解决Unity项目中UI脚本丢失的问题
此脚本是解决UI脚本丢失 步骤:将此脚本放到项目下的Edit文件夹下,如果没有,请自行创建 步骤:点击窗口的Asstes → Reimport ui assemblies using UnityEngine; using System.Collections.Generic; using UnityEditor; using System.Text.RegularExpressions; using System.IO; using System.Text; public class Reimp
-
Swift 2.1 为 UIView 添加点击事件和点击效果
前言 UIView 不像 UIButton 加了点击事件就会有点击效果,体验要差不少,这里分别通过自定义和扩展来实现类似 UIButton 的效果. 正文 一.为 UIView 添加点击事件 extension UIView { func addOnClickListener(target: AnyObject, action: Selector) { let gr = UITapGestureRecognizer(target: target, action: action) gr.numbe
随机推荐
- AngularJS 实现购物车全选反选功能
- jQuery插件FusionWidgets实现的AngularGauge图效果示例【附demo源码】
- AJAX跨域请求json数据的实现方法
- 基于javascipt-dom编程 table对象的使用
- Node 自动化部署的方法
- 五板斧封杀Windows操作系统默认共享
- Java实现解数独的小程序
- asp.net中GridView编辑,更新,合计用法示例
- ASP.NET网站模板的实现(第2节)
- Python批量创建迅雷任务及创建多个文件
- php $_SERVER windows系统与linux系统下的区别说明
- jQuery中用on绑定事件时需注意的事项
- jquery.cookie.js使用指南
- 详解Java的堆内存与栈内存的存储机制
- PHP代码优化之成员变量获取速度对比
- Windows Vista 简体中文版 X64版 原版镜像 下载
- JavaScript函数绑定用法实例分析
- Android使用animator实现fragment的3D翻转效果
- php使用filter_var函数判断邮箱,url,ip格式示例
- Python如何调用JS文件中的函数