NGUI之Slider,最简单的方法做进度条。

rss"/>

既然标题是最简单的,那么很多东西就不需要我们自己做了,使用的是NGUI的示例,只针对初学者,接下来让我们来做一个最简单游戏设置里的声音控制。

1、导入NGUI;

2、找到NGUI的Menu示例Demo,文件夹为NGUI\Examples\Scenes 打开Example 3 - Menu场景

3、在Hierarchy视图中找到Option - Voice游戏对象【灰色的active没有启用的对象】

4、复制改游戏对象,并在你的项目的Hierarchy视图中粘贴到合适的位置,并将active启用(或者在你要进入该设置时用代码控制启用也可以)。

5、修改下Slider、UILabel等的名字和内容,加上一个现实百分比的Label

基本效果已经出来了。

如要改成自己的样式,则可以更改下Slider的前景的Sprite,背景Sprite,游标Sprite等设置即可

6、给Slider的游标GameObject绑定滑动的事件。

把要绑定事件的脚本挂载到Slider上(或Slider的游标GameObject)

找到游标的游戏对象

var slider_Voice = GameObject.Find("UI Root/gameSetBG/Option_Voice/Slider_Voice/Thumb");

在Awake事件中使用UIEventListener进行绑定滑动事件,不明白这么绑定的可以参考我的前一篇博文 NGUI事件监听之UIEventListener的使用

    void Awake ()
{
UIEventListener.Get(slider_Voice).onPress += SetBGGSound;//滑动事件
}

写好滑动事件触发的方法

//设置背景音乐
public void SetBGGSound(GameObject go, bool state)
{
UILabel soundPerLabel = soundPer.GetComponent<UILabel>();//声音百分比的Label
UISlider soundSlider = slider_Voice.GetComponentInParent<UISlider>();
if (soundSlider.value == 0f)
{
soundPerLabel.text = "静音";
}
else if (soundSlider.value == 1f)
{
soundPerLabel.text = "100%";
}
else
{
soundPerLabel.text = (soundSlider.value * ).ToString("F0") + "%";
}
UICamera.GetComponent<AudioSource>().volume = soundSlider.value;//设置背景音乐的声音
}

因为我是把背景音乐直接放在了UICamera,如在其他游戏对象上则找到改游戏对象获取AudioSource组件进行设置音量。

NGUI之Slider,最简单的方法做进度条。的更多相关文章

  1. Xamarin XAML语言教程通过ProgressTo方法对进度条设置

    Xamarin XAML语言教程通过ProgressTo方法对进度条设置 在ProgressBar中定义了一个ProgressTo方法,此方法也可以用来对进度条当前的进行进行设置,ProgressTo ...

  2. Xamarin XAML语言教程使用方法设置进度条进度

    Xamarin XAML语言教程使用方法设置进度条进度 在ProgressBar中定义了一个ProgressTo方法,此方法也可以用来对进度条当前的进行进行设置,ProgressTo与Progress ...

  3. [整理] C#调用SQLDMO.DLL时间数据库备份 / 还原。 (香神无涯) // C#实现SQLSERVER2000数据库备份还原的两种方法 (带进度条)

    /// <summary>/// 通过调用MSSQL的SQLDMO.DLL文件来实现备份数据库/// 1.首先在在项目中引用SQLDMO.DLL文件./// 2.在引用中的SQLDMO.D ...

  4. (转)Unity3D游戏开发 NGUI之渐变加载到100%的Loading场景进度条

    NGUI 现有的进度条存在的问题: 进度条跳跃式前进,加载到90%后卡住,突然进入下一个场景.接下来就是解决这个问题. 背景 通常游戏的主场景包含的资源较多,这会导致加载场景的时间较长.为了避免这个问 ...

  5. 使用ajax实现简单的带百分比进度条

    需求:当进行文件上传保存等操作时,能在页面显示一个带百分比的进度条,给用户一个好的交互体验 实现步骤 JSP页面 1.添加table标签 <table id="load" w ...

  6. 最简单的android自定义进度条样式

    一.自定义圆形进度条样式 1.在安卓项目drawable目录下新建一个xml文件如下:<?xml version="1.0" encoding="utf-8&quo ...

  7. 超简单CSS3水平动态进度条+小圆球+背景色渐变

    实现的的效果图如下:效果是动态加载的 代码如下: <!DOCTYPE html> <html lang="en"> <head> <met ...

  8. jquery defered的progress方法实现进度条

    效果如图: 实现代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...

  9. WPF 简单的绕圈进度条(无cs代码)

    方案: 图标位置不变化的情况下设置透明度实现 代码: <Window x:Class="WpfApp1.MainWindow" xmlns="http://sche ...

随机推荐

  1. T-SQL 高级查询

    基本常用查询 --select select * from student; --all 查询所有 select all sex from student; --distinct 过滤重复 selec ...

  2. hdu1503 最长公共子序列变形

    题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=1503 题意:给出两个字符串 要求输出包含两个字符串的所有字母的最短序列.注意输出的顺序不能 ...

  3. uva624 01背包要求输出路径

    You have a long drive by car ahead. You have a tape recorder, but unfortunately your best music is o ...

  4. 插入视频(youtube)

    iframe 如果没有flash播放器,会自动使用html5播放器 <iframe width="420" height="315" src=" ...

  5. DZY Loves Sequences

    time limit per test 1 second memory limit per test 256 megabytes input standard input output standar ...

  6. 【wpf】Path画扇形以及Path的Data属性的理解

    <Path x:Name="PathFillColor" Fill="{TemplateBinding Property=Button.Background}&qu ...

  7. 我的c++学习(7)引用和复制构造函数

    一.引用 什么是引用? 引用又称别名(alias),是一种非常特殊的数据类型.它不是定义一个新的变量,而是给一个已经定义的变量重新起一个别名,也就是 C++系统不为引用类型变量分配内存空间.引用主要用 ...

  8. 【bzoj2440】【bzoj3994】莫比乌斯反演学习

    哇..原来莫比乌斯代码这么短..顿时感觉逼格-- 写了这道题以后,才稍稍对莫比乌斯函数理解了一些 定理:和是定义在非负整数集合上的两个函数,并且满足条件,那么我们得到结论 在上面的公式中有一个函数,它 ...

  9. HDU1402 A * B Problem Plus(FFT)

    http://acm.hdu.edu.cn/showproblem.php?pid=1402 初学FFT. http://www.cnblogs.com/WABoss/p/FFT_Note.html ...

  10. HDU4888 Redraw Beautiful Drawings(最大流唯一性判定:残量网络删边判环)

    题目 Source http://acm.hdu.edu.cn/showproblem.php?pid=4888 Description Alice and Bob are playing toget ...