Unity 4.6 uGUI的点击事件

  因为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);
    }
}

实验结果:

是不是委托也可以用到啊,好了,现学现卖,大家共同学习!

时间: 2024-10-07 05:42:55

Unity 4.6 uGUI的点击事件的相关文章

Unity NGUI监听按钮点击事件的三种方法

NGUI版本:3.6.5 1.直接实现OnClick方法: 创建一个脚本,在脚本中实现OnClick()方法,绑定该脚本到按钮上,点击时就会实现OnClick函数内容: 2.使用SendMessage: 选择按钮后,打开Component——NGUI——Interaction,选择Button Message,为按钮添加一个UIButton Message组件: 然后设置UIButton Message中的参数即可: Target:接收按钮消息的游戏对象: Function Name:接收按钮消

Unity中uGUI的控件事件穿透逻辑

1.正常来说Image和Text是会拦截点击事件的,如果添加EventTrigger的话,就可以响应对应的交互事件. 2.如果Image和Text是一个Button的子控件,那么虽然其会显示在Button上面,但是并不会拦截点击事件.除非是Selectable的,否则子控件不会影响到父控件的点击. 3.如果是跨Panel或者是同级的Image和Text,是会拦截点击事件的,即如果Image在某个Button之上,那么点击Image的事件不会穿透给Button. 4.如果在3的情况下想忽略点击事件

Unity3D研究院之将UI的点击事件渗透下去(转)

转自 http://www.xuanyusong.com/archives/4241 处理UI还有3D模型的点击推荐使用UGUI的这套事件系统,因为使用起来比较简洁,不需要自己用代码来发送射线,并且可以很好的处理同时点击UI和3D模型上. 1.给3D摄像机挂一个Physics Raycaster组件.Event Mask过滤掉UI. 2.用unity自带的Event Trigger 或者  http://www.xuanyusong.com/archives/3325 就可以对UI 或者 3D模

NGUI给图片添加点击事件

使用场景:游戏的背包格子,它不是按钮,但是需要响应点击事件. 首先在Unity中创建一个背包格子的Prefab,把它的layer设置成UI层,因为UICamera默认的 接收事件层Event Receiver Mask就是UI层. 其次,给格子Prefab添加一个boxCollider,把大小拉到合适 然后,创建一个继承自MonoBehaviour的类AClass,并把它绑定在Prefab上,里面实现方法: void OnClick() { ...... } 运行游戏,点击即可进入到OnClic

Ngui 五种点击事件实现方式及在3d场景中点透的情况

http://www.unity蛮牛.com/thread-22018-1-1.html ngui作为unity界面插件之一中,无疑是最好用,使用最多的了从自学unity到现在界面一直使用它 由于它的持续更新,我在此不得不说,确实很为开发者作想,为什么这么讲呢?大概在去年吧  当时用的那个版本已经不记得了,反正就是有个需求,要实现“无限循环”拖动,使用过以前ngui的人就知道当时是没有这个功能的,后来被自己弄出来没几天,就发现新版本中就自带了这样的东西,也就是如今ngui列子中的 Endless

移动端点击事件全攻略,有你知道与不知道的各种坑

看标题的时候你可能会想,点击事件有什么好说的,还写一篇攻略?哈哈,如果你这么想,只能说明你too young to simple. 接触过移动端开发的同学可能都会面临点击事件的第一个问题:click事件的300ms延迟响应.不能立即响应给体验造成了很大的困扰,因此解决这个问题就成为了必然. 这个问题的解决方案就是: zepto.js的tap事件.tap事件可以理解为在移动端的click事件,而zepto.js因为几乎完全复制jQuery的api,因此常常被用在h5的开发上用来取代jquery.

微信小程序学习总结(2)------- 之for循环,绑定点击事件

最近公司有小程序的项目,本人有幸参与其中,一个项目做下来感觉受益匪浅,与大家做下分享,欢迎沟通交流互相学习. 先说一下此次项目本人体会较深的几个关键点:微信地图.用户静默授权.用户弹窗授权.微信充值等等. 言归正传,今天分享我遇到的关于wx:for循环绑定数据的一个tips:  1. 想必大家的都知道wx:for,如下就不用我啰嗦了: <view class="myNew" wx:for="{{list}}">{{item.title}}<view

【转】Android - Button(按钮)的响应点击事件的4种写法

原文网址:http://www.yrom.net/blog/2011/12/12/android-4-onclicklistener-of-button/ Button控件setOnclickListener(View.OnClickListener listener)来接收一个点击事件的监听器 自定义一个点击事件监听器类让其实现View.OnClickListener的onClick(View v)方法 1 2 3 4 5 class MyOnClickListener implements

android中多次点击事件的实现

1.在android系统中,设置里面->关于手机->安卓版本(即android version),三击后会出现android该个版本的版本号,以及一些动图,算是一个彩蛋吧! 2.导入setting源代码,ctrl+h搜索文件(关键字Android Version),搜索到了之后打开xml文件 3.是一个strings.xml文件,再次找到关键字firmware_version,再搜索.找到src下的源代码文件 4.又找到一个关键字KEY_FIRMWARE_VERSION,翻一翻找到关于多次点击