(二十二)unity4.6学习Ugui中文文档-------交互-Eventsystem & Binding

大家好,我是孙广东。   转载请注明出处:http://write.blog.csdn.net/postedit/38922399

更全的内容请看我的游戏蛮牛地址:http://www.unitymanual.com/forum.php?mod=guide&view=my

完整的教程下载地址:http://www.unitymanual.com/thread-26665-1-1.html

5.4 Eventsystem& Binding

这两个东西其实用处不同也没有什么可比较的,但是也要区分一下比较好吧。

Binding

交互的组件包括如下:

(二十二)unity4.6学习Ugui中文文档-------交互-Eventsystem & Binding_第1张图片

其中的按钮ButtonBinding如下:

其中的开关Toggle、滑块Slider、滚动条ScrollbarBinding如下:

 

对于上面的两个图片的设置其实是很简单的。

所谓Binding就是将当前组件的状态变化和其他对象上的组件内的属性或者publicfunction()的绑定。而function()我们可以理解为事件处理函数,它可以是系统组件内的方法,也可以是用户自定义脚本中的方法。本组件的状态改变是因为用户的输入操作引起的。

 

举个例子:下图是一个滑块,我们希望我们拖动滑块的过程中,滑块的当前值能够显示在Label上。

设置如下:把Label对象拖到这个滑块组件上。

(二十二)unity4.6学习Ugui中文文档-------交互-Eventsystem & Binding_第2张图片

然后是选择后面的函数。  我们先来看看Label对象都有哪些组件吧!

(二十二)unity4.6学习Ugui中文文档-------交互-Eventsystem & Binding_第3张图片

然后我们在单击选择函数的按钮吧。显示如下的

(二十二)unity4.6学习Ugui中文文档-------交互-Eventsystem & Binding_第4张图片

上图就是我们单击了1处,弹出了2的内容,内容很明显吧,GameObject是每个对象必有的这里就可以代表Label本身,那么RectTransformShowSliderValue(自定义的脚本)CanvasRendererText就是Label对象上的四个组件!这五个就是对应五个类或者脚本。

然后每个2中的项又包含不同的3.

3的内容我们可以查看:unity编辑器->Window->ScriptingReference中的如下:

(二十二)unity4.6学习Ugui中文文档-------交互-Eventsystem & Binding_第5张图片

这些UI类中自然有3的定义了。

EventSystem

前面也介绍了,这里不再多叙述。不管是交互的还是显示的组件对象,都可以接收到用户的输入操作,通过事件系统来完成。

 

比如官方的Demo中的Drag And Drop场景中,两个脚本文件DragMe.csDropMe.cs文件。

   主要是希望Image组件(不可交互的)对象能够接收到鼠标的输入操作,然后响应。








你可能感兴趣的:(UI,unity,unity3d,NGUI,UGUI)