日常总结(3) 各种单击事件的总结

来源:互联网 发布:买房子上哪个网站知乎 编辑:程序博客网 时间:2024/05/17 09:27

学习了很多的事件的回调方法。想总结一下。

1 UGUI中

1(1) 在编辑器里,Button有一个Click事件,是在Inspector面板中,需要一个游戏物体,这个游戏脚本中有一个公有的方法。在单击Button之后实现该方法的调用,可以调用Button自身的脚本中的方法,也可以是别的。别忘记空物体上也可以挂载脚本,有时这个方法会特别好用。
(2)Button也可以是实现接口。来使用单击的方法。继承接口IPointerClickHandLer,实现接口里面的方法。
这里写图片描述

(3)用脚本控制Button的事件,添加一个Listener,可以实现用别的方法实现,Button的事件。
这里写图片描述

2 鼠标和UI进行交互时 ,会响应很多事件,事件的名称,接口和方法。

public class beibao : MonoBehaviour,IBeginDragHandler,IDragHandler,IEndDragHandler,IPointerEnterHandler,IPointerDownHandler,IPointerUpHandler,IPointerExitHandler,IPointerClickHandler{    //单击事件完成是down和up的    public void OnPointerClick (PointerEventData eventData)    {    }       //鼠标离开    public void OnPointerExit (PointerEventData eventData)    {    }    //鼠标进入    public void OnPointerEnter (PointerEventData eventData)    {    }    //鼠标弹起    public void OnPointerUp (PointerEventData eventData)    {    }    //鼠标按下    public void OnPointerDown (PointerEventData eventData)    {    }    //鼠标拖动结束    public void OnEndDrag (PointerEventData eventData)    {       }    //拖动中    public void OnDrag (PointerEventData eventData)    {    }    //拖动开始    public void OnBeginDrag (PointerEventData eventData)    {    }

3 脚本中的事件
碰撞器 :碰撞检测
都有碰撞器,有相对运动,至少有一个有刚体(刚体放在运动的一方身上)

    void OnCollisionEnter (Collision other)    {    }    void OnCollisionStay (Collision other)    {       }    void OnCollisionExit (Collision other)    {    }

触发器:检测条件
两个都有碰撞器,至少有一个刚体,一个勾选Is Trigger。

    void TriggerEnter (Collider other)    {       }    void TriggerStay (Collider other)    {    }    void TriggerExit (Collider other)    {           }

4 鼠标的事件 ( 游戏场景里面鼠标事件 )

//鼠标在Collider上,按下鼠标,事件触发void MouseDown(){}//鼠标在Collider之上,发生拖动,事件触发void MouseDrag(){}//鼠标进入Collider区域内时,事件触发void MouseEnter(){}void MouseExit(){}//鼠标在Collider之上时 每帧都会调用该事件void MouseOver(){}//鼠标弹起时,void MouseUp(){}//鼠标在同一个Collider按下又弹起触发事件void OnMouseUpAsButton(){}
0 0