{"id":830,"date":"2016-11-03T10:31:23","date_gmt":"2016-11-03T02:31:23","guid":{"rendered":"http:\/\/39.100.100.179\/?p=830"},"modified":"2016-11-03T10:31:23","modified_gmt":"2016-11-03T02:31:23","slug":"ugui%e7%9b%91%e5%90%ac%e4%ba%8b%e4%bb%b6","status":"publish","type":"post","link":"http:\/\/www.u3d8.com\/?p=830","title":{"rendered":"UGUI\u76d1\u542c\u4e8b\u4ef6"},"content":{"rendered":"<p>\u5728NGUI\u4e2d\uff0c\u6211\u4eec\u53ef\u4ee5\u5f88\u5bb9\u6613\u7684\u5bf9UI\u4e8b\u4ef6\u8fdb\u884c\u76d1\u542c\uff0c\u70b9\u51fb\uff0c\u62d6\u52a8\u7b49\u7b49\u2026\u2026<br \/>\n\u90a3UGUI\u4e2d\uff0cUnity\u5374\u8fd8\u6ca1\u6709\u7ed9\u6211\u4eec\u5f88\u597d\u7684\u5c01\u88c5\u4f7f\u7528\u3002<br \/>\n\u90a3\u6211\u4eec\u5c31\u81ea\u5df1\u6765\u5c01\u88c5\u76d1\u542c\u4e8b\u4ef6\u3002<\/p>\n<p><a href=\"https:\/\/docs.unity3d.com\/460\/Documentation\/Manual\/SupportedEvents.html\">https:\/\/docs.unity3d.com\/460\/Documentation\/Manual\/SupportedEvents.html<\/a><\/p>\n<pre class=\"lang:c# decode:true \">using UnityEngine;\r\nusing System.Collections;\r\nusing UnityEngine.EventSystems;\r\npublic class EventTriggerListener : EventTrigger{\r\n    public delegate void VoidDelegate(GameObject go);\r\n    public VoidDelegate onEnter;\r\n\tpublic VoidDelegate onClick;\r\n\tpublic VoidDelegate onDown;\r\n\tpublic VoidDelegate onExit;\r\n    public VoidDelegate onUp;\r\n    public VoidDelegate onBeginDrag;\r\n    public VoidDelegate onDrag;\r\n    public VoidDelegate onEndDrag;\r\n    public VoidDelegate onSelect;\r\n    public VoidDelegate onUpdateSelect;\r\n \r\n\tstatic public EventTriggerListener Get (GameObject go)\r\n\t{\r\n\t\tEventTriggerListener listener = go.GetComponent&lt;EventTriggerListener&gt;();\r\n\t\tif (listener == null) listener = go.AddComponent&lt;EventTriggerListener&gt;();\r\n\t\treturn listener;\r\n\t}\r\n    public override void OnPointerEnter(PointerEventData eventData)\r\n    {\r\n        if (onEnter != null) onEnter(gameObject);\r\n    }\r\n\tpublic override void OnPointerClick(PointerEventData eventData)\r\n\t{\r\n\t\tif(onClick != null) onClick(gameObject);\r\n\t}\r\n\tpublic override void OnPointerDown (PointerEventData eventData){\r\n\t\tif(onDown != null) onDown(gameObject);\r\n\t}\r\n\tpublic override void OnPointerExit (PointerEventData eventData){\r\n\t\tif(onExit != null) onExit(gameObject);\r\n\t}\r\n\tpublic override void OnPointerUp (PointerEventData eventData){\r\n\t\tif(onUp != null) onUp(gameObject);\r\n\t}\r\n    public override void OnBeginDrag(PointerEventData eventData)\r\n    {\r\n        if (onBeginDrag != null) onBeginDrag(gameObject);\r\n    }\r\n    public override void OnDrag(PointerEventData eventData)\r\n    {\r\n        if (onDrag != null) onDrag(gameObject);\r\n    }\r\n    public override void OnEndDrag(PointerEventData eventData)\r\n    {\r\n        if (onEndDrag != null) onEndDrag(gameObject);\r\n    }\r\n    public override void OnSelect(BaseEventData eventData)\r\n    {\r\n        if (onSelect != null) onSelect(gameObject);\r\n    }\r\n    public override void OnUpdateSelected(BaseEventData eventData)\r\n    {\r\n        if (onUpdateSelect != null) onUpdateSelect(gameObject);\r\n    }\r\n}<\/pre>\n<pre class=\"lang:c# decode:true \">using UnityEngine;\r\nusing System.Collections;\r\nusing UnityEngine.UI;\r\n\r\npublic class Test : MonoBehaviour {\r\n\r\n    [SerializeField]\r\n    Image myImage;\r\n\r\n\t\/\/ Use this for initialization\r\n\tvoid Start () {\r\n        EventTriggerListener.Get(myImage.gameObject).onClick = OnClick;\r\n\t}\r\n\t\r\n    void OnClick(GameObject go)\r\n    {\r\n        Debug.Log(go.name);\r\n    }\r\n}\r\n<\/pre>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u5728NGUI\u4e2d\uff0c\u6211\u4eec\u53ef\u4ee5\u5f88\u5bb9\u6613\u7684\u5bf9UI\u4e8b\u4ef6\u8fdb\u884c\u76d1\u542c\uff0c\u70b9\u51fb\uff0c\u62d6\u52a8\u7b49\u7b49\u2026\u2026 \u90a3UGUI &hellip; <a href=\"http:\/\/www.u3d8.com\/?p=830\">\u7ee7\u7eed\u9605\u8bfb <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[23],"tags":[205],"_links":{"self":[{"href":"http:\/\/www.u3d8.com\/index.php?rest_route=\/wp\/v2\/posts\/830"}],"collection":[{"href":"http:\/\/www.u3d8.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.u3d8.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.u3d8.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.u3d8.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=830"}],"version-history":[{"count":1,"href":"http:\/\/www.u3d8.com\/index.php?rest_route=\/wp\/v2\/posts\/830\/revisions"}],"predecessor-version":[{"id":831,"href":"http:\/\/www.u3d8.com\/index.php?rest_route=\/wp\/v2\/posts\/830\/revisions\/831"}],"wp:attachment":[{"href":"http:\/\/www.u3d8.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=830"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.u3d8.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=830"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.u3d8.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=830"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}