Unity判斷鼠標是否點擊在UGUI上

今天在做一個遊戲時出現了個小問題,當我點擊的地方是空地時,需要響應一個事件,而當我點擊UI上切換狀態時,並不需要響應這個事件,查了一下,Unity有一個方法可以檢測鼠標是否點擊在UGUI 的UI上,在此記錄自用。

EventSystem.current.IsPointerOverGameObject()

此方法返回一個bool類型的值,當點擊在UI上時,則返回true,否則返回 false。使用此方法需要引入UnityEngine.EventSystems的命名空間。

完整操作:

//當按下鼠標左鍵,且不是點擊在UI上時,則響應某事件
if (Input.GetMouseButtonDown(0) && (!EventSystem.current.IsPointerOverGameObject()))
{
	Debug.log("Do it!");
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章