EventSystem.lsPointerOverGameObject详解
介绍
在Unity中,EventSystem.lsPointerOverGameObject是一个用于检测当前是否有UI元素被鼠标指针覆盖的方法。如果有UI元素被覆盖,则返回true,否则返回false。这个方法通常用于判断是否可以进行一些交互操作,比如拖动、点击等。
方法
public static bool lsPointerOverGameObject(int pointerId = kMouseLeftId);
参数:
- pointerId:指针ID,用于检测不同类型的指针。默认为鼠标左键ID,也可以设置为其他类型,如触摸屏等。
举例子
例子1:检测鼠标是否在UI元素上
if (EventSystem.lsPointerOverGameObject()) {
// 鼠标在UI元素上,执行相应操作
}
例子2:检测触摸屏是否在UI元素上
if (EventSystem.lsPointerOverGameObject(Input.GetTouch(0).fingerId)) {
// 触摸屏在UI元素上,执行相应操作
}
例子3:检测UI元素是否被覆盖
if (EventSystem.lsPointerOverGameObject()) {
// UI元素被覆盖,执行相应操作
}