首页 > Unity3D频道 > 【UGUI研究院】 > UGUI研究院之自动触发UI的消息事件(二十)
2015
11-19

UGUI研究院之自动触发UI的消息事件(二十)

Unity新的消息系统已经完全取代了之前的sendMessage。总体来说这玩意没什么大用,因为C#的 代理事件委托完全能更好的替代他。只是UGUI中大量的在使用新的消息系统。运行时怎么给UI添加事件,大家可以看我之前的文章 UGUI研究院之控件以及按钮的监听事件系统(五)

如下图所示,这里我就先不考虑运行时添加,在编辑模式下给Image添加一个EventTrigger的脚本。然后在下面就可以选择事件类型了,这里我选择Pointer Click 也就是对点击它进行监听。

UGUI研究院之自动触发UI的消息事件(二十) - 雨松MOMO程序研究院 - 1

 

Button 会自动带Click这个脚本。 Text的话和Image一样加EventTrigger组件即可。

正常情况下,我得用手点击它才会进入我的监听方法。假如我不想点击触发,我就想在某个时间点自动触发怎么办? 其实还有个方法就是自己去调用点击监听的方法,但是有个问题,比如按钮点击的时候自身会按下 抬起 会有颜色的变化。还有就是如果 多个按钮 监听方法写了多个方法里 也就不好调用了。

下面直接上代码。

 

Handler大家可以去这里查 http://docs.unity3d.com/Manual/SupportedEvents.html

最后编辑:
作者:雨松MOMO
专注移动互联网,Unity3D游戏开发
捐 赠写博客不易,如果您想请我喝一杯星巴克的话?就进来看吧!

UGUI研究院之自动触发UI的消息事件(二十)》有 16 条评论

  1. Uqiumu 说:

    这个可不可以直接Invoke一个方法就解决了?

  2. 五识一念 说:

    直接实现IPointerClickHandler接口是不是好一点

  3. 陈强 说:

    在抬起按钮事件中使用Invoke就可以了啊,虎贲小朋友

  4. 胡犇 说:

    请问雨松大大,手机上有没有可能ugui的button在点击松开后一段时间后才响应?现在遇到了这个问题!请问这怎么解决?

  5. Sun 说:

    问下雨松大大,关于UGUI的ScrollView的一个问题:这个ScrollVIew是一个很大的主城,我可以拖动主城浏览整个主城,当我拖到某个位置的时候,我用两个指头进行缩放。但缩放的效果是根据ScrollView里面的content的锚点的位置缩放的。我想要的理想的效果是在两个手指之间的点进行缩放。我尝试把锚点设置为两指之间的位置,缩放的时候会莫名的偏移很多。不知道大大有木有办法。

    • 说:

      你所说的锚点是Pivot吗?你在代码里修改这个属性时,需要重新设置下anchorPosition。改变了Pivot,但anchorPosition不变,所以看上去就会偏移

  6. kk 说:

    请问怎么模拟鼠标输入呀

  7. 范毅 说:

    请问下 ugui图集的纹理格式应该如何指定?

  8. Shining 说:

    UGUI自动打包的sprite图集会存在什么地方?现在要做网页版游戏或是移动端自动更新功能,这个图集能控制打包到游戏外手动下载与加载吗?不会只能打到游戏安装包里吧。

  9. 您好~大大 我用了ExecuteEvents.Execute()来执行我的click事件,来开启网络,会报错?直接点击执行就不会报错。。这个是为什么呢?点击函数里 执行的是NetworkManager.singleton.StartHost(); 这个。。求大大指点!

留下一个回复

你的email不会被公开。