zoukankan      html  css  js  c++  java
  • Unity判断鼠标是否在UI(UGUI)上

    "EventSystem.current.IsPointerOverGameObject()"

    UI和3D场景同时都需要响应触摸事件,如果同时响应可能就会出现触摸UI的时候影响到了3D部分。为了解决这个问题在判断3D响应之前要先判断手指是否点击在UI上。

     1 #if UNITY_ANDROID && !UNITY_EDITOR
     2 #define ANDROID
     3 #endif
     4  
     5  
     6 #if UNITY_IPHONE && !UNITY_EDITOR
     7 #define IPHONE
     8 #endif
     9  
    10  
    11  
    12 using UnityEngine;
    13 using UnityEngine.UI;
    14 using System.Collections;
    15 using UnityEngine.EventSystems;
    16 public class NewBehaviourScript : MonoBehaviour {
    17  
    18     // Use this for initialization
    19     void Start () {
    20     
    21     }
    22     
    23  
    24     void Update()
    25     {
    26         if (Input.GetMouseButtonDown(0)||(Input.touchCount >0 && Input.GetTouch(0).phase == TouchPhase.Began))
    27         {
    28 #if IPHONE || ANDROID
    29             if (EventSystem.current.IsPointerOverGameObject(Input.GetTouch(0).fingerId))
    30 #else
    31             if (EventSystem.current.IsPointerOverGameObject())
    32 #endif
    33                 Debug.Log("当前触摸在UI上");
    34             
    35             else 
    36                 Debug.Log("当前没有触摸在UI上");
    37         }
    38     }
    39 }
  • 相关阅读:
    实现进制转化伪代码
    XOR算法
    最大公约数算法
    To be a hacker
    20191310《信息安全专业导论》第四周学习总结
    浪潮之巅阅读感想
    20191310 李烨龙 《信息安全导论》第二周学习
    git安装心得
    计算机概论阅读
    学业优秀者经验展示
  • 原文地址:https://www.cnblogs.com/Behaviour/p/4832600.html
Copyright © 2011-2022 走看看