PointerEventData.pointerId值总是为2,解决方法

问题描述

在使用Unity新输入系统时,如果实现了IPointerClickHandler接口,本是来打算通过判断pointerId的值来得到是鼠标的那个键按下了,结果PointerEventData.pointerId值总是为2。

        public void OnPointerClick(PointerEventData eventData)
        {
    
    

            if(eventData.pointerId==-2)
            {
    
    
                //右键点击
            }

        }

解决方案:

摸索了一会儿发现,在场景中添加EventSystem时,如果是使用了新输入系统那么它会提醒你
在这里插入图片描述
这时候不要点击Replace with inputsystemUiinputmodule就行了,具体原因可能是因为unity的bug问题吧

猜你喜欢

转载自blog.csdn.net/qq_41727685/article/details/131794485