用Toggle控件切换背景.docxVIP

  • 12
  • 0
  • 约6.98千字
  • 约 13页
  • 2017-08-05 发布于重庆
  • 举报
用Toggle控件切换背景

用Toggle控件切换背景 该工程运行时,显示第一张背景: 当单击Toggle控件“背景2”时,会关闭第一个背景,显示出第二个背景: 余下的背景3、背景4、背景5依此类推,下面我们来详细地介绍怎样用Unity来实现。 启动Unity(本文Unity版本为5.0),在Hierarchy视图中单击Create按钮创建2D Object的Sprite(图像精灵),如下图: 创建后,从其Sprite Renderer属性可看出,其Sprite图像精灵的类型为Sprite: 下面我们为其准备图像。 先创建一些文件夹: 把事先准备好的几张图片导入Images文件夹中: 不过这些图片还是普通的纹理图片,我们全选这些图片,在其Inspector视图中,单击Texture Type,将其纹理类型设为Sprite(2D and UI): 然后单击“Apply”,应用后,这5张图片就转换成Sprite了: 接着,我们把第一张图片拖到中即为我们刚才所创建的2D Object对象赋了源图像了,接着,我们把此对象更名为bg1,同时将摄像机Main Camera拖到bg1下,使其成为bg1的子物体,并同时调整摄像机的位置以及其Field of View的值,使摄像机显示的图像充满整个屏幕: 以同样的方法再创建4个(也可按Ctrl+D复制后更换不同的图片精灵): 然后创建一个空对象,并命名为bg,将bg1至bg5做为它的子物体: 不过,因此时有多个摄像机,而每个摄像机里都有组件,所以会出现警示:有5个音频侦听器在现场,请确保总有一个音频侦听器在现场 打个比方,一个人不可能长5对耳朵,所以一个场景里不能有5个音频侦听器。我们去掉其中4个摄像机上的音频侦听组件,保留一个摄像机上的侦听器即可。 此时运行,显示的是bg5背景,因bg5排在最上边,而我们的设计思想是通过Toggle来控制,程序运行的起初,应显示bg1,隐藏其余4个,当我们单击某个Toggle时,就显示对应的背景,隐藏先前的背景。所以这里要做一设置,把bg2至bg5的控制其显示的属性的对勾去掉,这样在程序运行的起初,就会只显示bg1,隐藏其余4个了。 接下来,创建画布Canvas,在画布上创建一空物体GameObject,在空物体下创建5个Toggle子物体Toggle1、Toggle2、Toggle3、Toggle5 、Toggle5: Toggle控件默认是复选,现在我们要把它们变成单选。 选中GameObject父控件,在其Inspector视图中单击Add Component按钮,在弹出的菜单中选择并单击UI后选择Toggle Group: 这样就为此父控件添加上了Toggle Group组件了。 然后全选Toggle1至Toggle5: 将已经添加上了Toggle Group组件的父控件GameObject拖至它们的Inspector视图中的Group属性里,这样这5个Toggle控件就成了一组单选控件了: 接下来,编写代码,以达到单击Toggle控件时,出现对应背景的功能: using UnityEngine; using System.Collections; using UnityEngine.UI; using UnityEngine.EventSystems; public class swith : MonoBehaviour { private GameObject root; private GameObject oldobj=null; private GameObject newobj=null; // Use this for initialization void Start () { root = GameObject.Find (bg); oldobj = root.transform.Find (bg1).gameObject; } public void gh(){ string s = EventSystem.current.currentSelectedGameO; switch (s){ case Toggle1: newobj=root.transform.Find(bg1).gameObject; oldobj.SetActive (false); oldobj=newobj; oldobj.SetActive (true); break; case Toggle2: newobj=root.transform.Find(bg2).gameObject; oldobj.SetActive (false); oldobj=newobj; oldob

文档评论(0)

1亿VIP精品文档

相关文档