unity3D游戏开发十六之NGUI三

本文介绍了Unity3D中NGUI的ProgressBar、UISlider和UIScrollBar的使用。讲解了各组件的属性,如Value、Alpha、Steps和Direction,并通过实例展示了如何创建进度条和滚动条,包括事件分发和交互效果。
摘要由CSDN通过智能技术生成

接下来我们看下ProgeressBar,进度条,它是UISlider和UIScrollBar的基类,属性如下图:


Value:百分比

Alpha:透明度

Steps:步阀阈值

Appearance:特性

a.Foreground(前景图片)

b.Background(背景图片)

d.Direction(滑动方向)

On Value Change:当滑动时,进行事件分发

下面我们做一个进度条,每过一秒进度加1,准备两个sprite作为前景图片跟背景图片,如下图:


我们修改Test脚本,代码如下图:

using UnityEngine;
using System.Collections;

public class Test : MonoBehaviour {



	//public UIInput username; 

	public UIProgressBar progressBr;

	private UILabel plabel;

	void Awake ()
	{

//		Debug.Log("----111");
//		//获取需要监听的按钮对象
//		GameObject button=GameObject.Find("UI Root (2D)/Camera/Anchor/Panel/Button");
//		//设置这个按钮的监听,指向本类的ButtonClick方法中
//		UIEventListener.Get(button).onClick=buttonClick;


		progressBr=GetComponent<UIProgressBar>();
		progressBr.value=0;


		GameObject ob=GameObject.FindWithTag("111");


		plabel=ob.GetComponent<UILabel>();




	}


	// Use this for initialization
	void Start () 
	{
	


	}
	
	// Update is called once per frame
	void Update ()
	{

		if(progressBr!=null)
		{


			progressBr.value+=0.01f*Time.deltaTime;


			string shuzhi=(progressBr.value * 100).ToString("#0.00");
			plabel.text=shuzhi+"%";


		}


	
	}



//	void buttonClick(GameObject button)
//	{
//
//
//		Debug.Log("username:"+username.value);
//
//	//	Debug.Log("GameObject:"+button.name);
//
//
//	}


}
绑定脚本,设置对象,如下图:


预览游戏,如下图:


下面我们看下UISlider,UISlider组件可以用来创建一个简单的slider和进度条。继承了UIProgressBar的所有功能,之后增加了可选的滑块,属性如下图:


效果如下:


接下来我们看下UIScrollBar,UIScrollBar用来创建滚动条——可变长度的滑动条在大小固定的区域移动。它继承了所有UIprogressBar的功能,仅仅修改了前景的显示方式,变为可以被移动位置并且可以交互,属性如下图:


UISlider类似,UIScrollBar需要引用一个Foreground widget。当Size值为1(100%)的时候,这个widget就会占用滚动条的最大尺寸,效果如下图:



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值