Unity 4.6 uGUI的点击事件
2014-12-01 17:46 wuzhang 阅读(6282) 评论(6) 编辑 收藏 举报因为Unity 4.6刚刚发布,自带的uGUI功能的相关资料还不是很完善,今天刚装的Unity 4.6,想看一下uGUI是否好用,那么开始就今天的学习吧啊!
1,新建一个空的工程。
2,打开Unity自带的UI系统。
3,创建UI->Canvas。 这里我就不在多介绍Canvas了,说白了就是布局的。大家会发现多了EventSystem(事件系统)。
1,EventSystem 是一种将基于输入的事件发送到应用程序中的对象,无论是键盘、 鼠标、 触摸或自定义输入。
2,EventSystem 由发送事件的几个组件共同组成。
详细介绍见:http://docs.unity3d.com/460/Documentation/ScriptReference/EventSystems.EventSystem.html
4,接下来该我们建一个Panel(也可不建,个人喜好),建个Panel我感觉便于空间的管理。
5,接下来就弄个BUtton出来,就OK了!
悬浮效果:
5,接下来我们写一个脚本来实验点击事件。
方法一:
using UnityEngine; using System.Collections; using UnityEngine.UI; public class testclick : MonoBehaviour { // Use this for initialization void Start () { Button btn = gameObject.GetComponent<Button>(); btn.onClick.AddListener(click); } void click() { Debug.Log ("Mouse Click"); } }
实现效果:
方法二:
实验结果:
怎么样一点也不难吧!
下面咱们学习的稍微再深入点:
6,建一个buttonClick.cs
using UnityEngine; using System.Collections; using UnityEngine.UI; using UnityEngine.Events; public class buttonClick : MonoBehaviour { // Use this for initialization void Start () { Button btn = gameObject.GetComponent<Button>(); btn.onClick.AddListener( delegate() { for(int i=0;i<10;i++) { onClick(i); } }); } public void onClick(int index) { Debug.Log (index); } }
实验结果:
是不是委托也可以用到啊,好了,现学现卖,大家共同学习!