一、类比常用按钮

按钮组件一般只有当点击时,执行的方法。

unity 多个按钮同一个回调 unity按钮触发_移出

点击:需要按下再起来

二、按钮的其他用法

但有时候,我们可能只需要按下的时候执行,或者抬起的时候执行,这时需要在加入EventTrigger组件

 <一>、EventTrigger组件

unity 多个按钮同一个回调 unity按钮触发_c#_02

当点击时Add New Event Type时,可以选择这个按钮响应的其他方式 

鼠标进入        PointerEnter

鼠标离开        PointerExit        当鼠标从按钮上移出,就会执行这个方法 

鼠标点击        PointerClick

鼠标按下        PointerDown

鼠标抬起        PointerUp

                                                个按钮,无论是在哪抬起)   

(这里把拖分成了四份):

1.拖前点击                    InitializepotentialDrag  按下执行        

2.点完拖得第一下         BeginDrag

3.拖得过程                    Drag

4.拖完了放开                EndDrag 点着按钮拖完放开的那一下执行一次

不常用:

拖拽跳跃        Drop

                                的时候执行

鼠标滚轮        Scoll

一直执行        UpdateDeselect

再次选择        Select 

(和结婚一样,选了它,离婚前都只结一次婚)

移情别恋        Deselect   点一下按钮,再点别人的时候执行(和离婚一样,先结婚才能有

                        资格离婚,离婚的时候执行)

移动               Move

回车               Submit  点一下这个按钮,然后点回车键执行

退出               Cancel  

选择好自己需要的情况,就会变成下图(这里用PointerEnter

unity 多个按钮同一个回调 unity按钮触发_unity_03

觉不觉得这个框框和按钮的框框很像,所以使用方法一样,点加号往里拖物体........(略) 

三、代码使用接口

值得注意的是,上面链接里,代码所在位置的脚本,必须挂在你希望执行的按钮上:

例,如果我希望长按下图button,执行代码,那么我的脚本必须挂在button物体上

unity 多个按钮同一个回调 unity按钮触发_unity_04

四、邀请时对应的名字

  • IPointerEnterHandler - OnPointerEnter-当鼠标移到按钮上面
  • IPointerExitHandler - OnPointerExit-当鼠标从按钮上移出
  • IPointerDownHandler - OnPointerDown-当鼠标按下这个按钮
  • IPointerUpHandler - OnPointerUp-当鼠标按下这个按钮,抬起的时候
  • IPointerClickHandler - OnPointerClick-当点击的时候
  • 拖拽篇
  • IInitializePotentialDragHandler - OnInitializePotentialDrag-按下执行
  • IBeginDragHandler - OnBeginDrag - 点着按钮拖的第一下执行一次
  • IDragHandler - OnDrag - 点着按钮后,随便滑动,只要不放开会隔一会执行一次
  • IEndDragHandler - OnEndDrag - 点着按钮拖完放开的那一下执行一次
  • 不常用篇
  • IDropHandler - OnDrop - 见上文
  • IScrollHandler - OnScroll - 见上文
  • IUpdateSelectedHandler - OnUpdateSelected - 见上文

  • ISelectHandler - OnSelect - 见上文
  • IDeselectHandler - OnDeselect - 见上文

  • IMoveHandler - OnMove - 见上文
  • ISubmitHandler - OnSubmit - 见上文
  • ICancelHandler - OnCancel - 见上文