目录
- unity UI系统
- 添加ui
- 编写脚本
unity UI系统
在日常的游戏或者别的什么活动中,ui总是必不可少的一项,在java中也有关于GUI的内容,unity也不例外,这次就使用脚本控制在unity添加的各种ui组件,使他们可以完成一些我们想要的功能
添加ui
在uniry中,自带了一些关于ui的组件
关于ui的详细介绍和使用可以阅读这篇文章
linkhttp://t.csdnimg.cn/dcXDQ
在此就不多做赘述,而将目光聚焦于添加这些ui组件后如何用脚本实现功能
一个登录ui示例(不代表描述对象,仅仅是一个实例)
编写脚本
我们可以看到在这些ui组件中,有各种各样的功能,例如文本输入框,按钮,背景,滑轮一类的,
那么该如何通过c#脚本来让这些组件实现相应的功能呢
/*** 学习ui系统* * 学习unity事件系统* EventSystem* 接口IPoint...Handler //指针事件接口* I...DragHandler //拖拽事件接口* transform.position=Input.mousePosition* **/using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;//旧版命名空间
//using TMPro;//新版文本命名空间
using System;public class ui : MonoBehaviour
{ //给gui对象赋值//第一种方式:getcompoent//第二种方式:public+外界赋值//Text t;//TextMeshPro tmp//在添加组件的时候可以根据这个脚本中创建的对象添加public Text t;public Image image;public RawImage RawImage;public Button button;public InputField inputField;public Toggle toggle;public Slider slider;public Scrollbar scrollbar;public Dropdown dropdown;private void Initdropdown(){dropdown.options.Clear();//清除列表Dropdown.OptionData op1 = new Dropdown.OptionData();op1.text = "guanzhu";dropdown.options.Add(op1);Dropdown.OptionData op2 = new Dropdown.OptionData();op2.text = "谢谢喵";dropdown.options.Add(op2);}void changedropdown(int intValue){switch (intValue){case 0:Debug.Log("关注");break;case 1:Debug.Log("取关");break;default:break;}}void clickButton(){//Debug.Log("关注成功");if(inputField.text == "123"){Debug.Log("yes");}else{Debug.Log("no");}}void clickToggle(bool isOn){if (isOn){Debug.Log("静音");}else{Debug.Log("播放");}}void clickSilder(float floValue){if (floValue<0.3f){Debug.Log("没血了");}}}
上面是一些可以可以显示到幕布上的功能,还有一些操控按钮和滚动条滑动条的功能,当然现在这个还是非常简单的,并没有什么复杂的功能(而且也没有配套的ui,这也没办法,之前写好的忘了保存就关机了直接找不见),可以作为一个练习的展示功能
以上。