好久没写了,今天来把关于NGUI的做的简单功能发上来~

这个是做单选框的。用了新版本的NGUI后,发现没有以前的Checkbox了,在网上查了之后才知道是用Toggle代替了以前的Checkbox。现在使用Toggle也能实现单选框的效果了(把三个Toggle的group设为同一个数字就能实现三选一),单选功能是实现了,但是选择其中一个toggle后无法取消选择(比如点击第一次就是选择状态再点一次就是取消选择),不知道是不是我的使用方法不正确~在网上找了也没找到NGUI自带的实现方法,然后就自己写了,当然要实现这个本来就不难~发过来权当笔记。

基本的控件使用方法网上一堆教程,都写的挺好的,照着做就能把控件搭好。

直接挂代码(比较简单没怎么注释):

using UnityEngine;
using System.Collections; public class toggle : MonoBehaviour
{
UIToggle[] toggles;
int value = ; //单选框所代表的的值:1、2、3 void Awake()
{
toggles = new UIToggle[];
for (int i = ; i < ; i++)
{
toggles[i] = this.transform.Find("Anchor/Panel/CheckBox/Toggle_" + (i+)).gameObject.GetComponent<UIToggle>();
print(toggles[i].name); toggles[i].gameObject.AddComponent<UIEventListener>();
UIEventListener.Get(toggles[i].gameObject).onClick = ButtonClick;
} } int click1 = ;
int click2 = ;
int click3 = ; void ButtonClick(GameObject obj)
{ string name = obj.name;
switch(name)
{
case "Toggle_1":
click1++;
click2 = ;
click3 = ;
if (click1 % == )
{
value = ;
toggles[].value = false;
GameObject sp = toggles[].transform.FindChild("Checkmark").gameObject;
sp.SetActive(false);
}
else
{
value = ;
GameObject sp = toggles[].transform.FindChild("Checkmark").gameObject;
sp.SetActive(true);
}
break; case "Toggle_2":
click2++;
click1 = ;
click3 = ;
if (click2 % == )
{
value = ;
toggles[].value = false;
GameObject sp = toggles[].transform.FindChild("Checkmark").gameObject;
sp.SetActive(false);
}
else
{
value = ;
GameObject sp = toggles[].transform.FindChild("Checkmark").gameObject;
sp.SetActive(true);
}
break; case "Toggle_3":
click3++;
click1 = ;
click2 = ;
if (click3 % == )
{
value = ;
toggles[].value = false;
GameObject sp = toggles[].transform.FindChild("Checkmark").gameObject;
sp.SetActive(false);
}
else
{
value = ;
GameObject sp = toggles[].transform.FindChild("Checkmark").gameObject;
sp.SetActive(true);
}
break; default:
break;
} print(value);
} }

使用 NGUI Toggle 制作单选框的更多相关文章

  1. NGUI之Toggle实现单选框

    一:使用步骤——创建一个checkboxes 1.首先在UI Root下建立一个Sprite,设置一张贴图,当作按钮的背景. 然后为其添加碰撞组件和Toggle组件 2.为第一个Sprite建立一个子 ...

  2. 可分组的选择框控件(MVVM下)(Toggle样式 仿造单选框RadioButton,复选框CheckBox功能)

    原地址: http://www.cnblogs.com/yk250/p/5660340.html 效果图如下:支持分组的单选框,复选框样式和MVVM下功能的实现.这是项目中一个快捷键功能的扩展. 1, ...

  3. 使用 SVG 制作单选和多选框动画【附源码】

    通过 JavaScript 实现 SVG 路径动画,我们可以做很多花哨的东西.今天我们要为您介绍一些复选框和单选按钮效果.实现的主要思路是隐藏原生的输入框,使用伪元素创造更具吸引力的样式,输入框被选中 ...

  4. CSS3-实现单选框radio的小动画

    在微信上看到一个教程文,觉得制作的小动画还是很有意思的,自己也试验了一下.一开始动画怎么都不执行(我用的HB),因为内置浏览器对css3的不兼容.加上各种浏览器前缀后就好了.但是旋转那个效果,在HB里 ...

  5. PyQt4 的部件 -- CheckBox 单选框

    单选框具有两种状态:被选中或未被选中. 当用户选择或者取消选择时,单选框就会发射一个stateChanged()信号 # QCheckBox 单选框 # 本例创建一个用来改变窗口标题的单选框 impo ...

  6. PyQt4单选框QCheckBox

    PyQt4中的部件 部件是构建应用程序的基础元素.PyQt4工具包拥有大量的种类繁多的部件.比如:按钮,单选框,滑块,列表框等任何程序员在完成其工作时需要的部件. QCheckBox单选框 单选框具有 ...

  7. 【三石jQuery视频教程】02.创建 FontAwesome 复选框和单选框

    视频地址:http://v.qq.com/page/m/8/c/m0150izlt8c.html 大家好,欢迎来到[三石jQuery视频教程],我是您的老朋友 - 三生石上. 今天,我们要通过基本的H ...

  8. 夺命雷公狗-----React---25--小案例之react经典案例todos(单选框的修改)

    还是老样子,首先给li里面的单选框一个函数,然后通过props来对她进行处理 然后在ul里面对父组建进行传送 补充一下啊第一步,因为到时候要用到index属性,所以我们需要发送多一个index过来 然 ...

  9. bootstrap制作搜索框及添加回车搜索事件

    下面是开发中用bootstrap制作的一个搜索框,以及给搜索框添加回车搜索事件的一个小案例. bootstrap制作搜索框及添加回车搜索事件 下面是功能实现的代码: <!DOCTYPE html ...

随机推荐

  1. struts-2-spring-2-jpa-ajax

    http://struts.apache.org/docs/struts-2-spring-2-jpa-ajax.html

  2. 【JVM】调优笔记2-----JVM在JDK1.8以后的新特性以及VisualVM的安装使用

    一.JVM在新版本的改进更新以及相关知识 1.JVM在新版本的改进更新 图中可以看到运行时常量池是放在方法区的 1.1对比: JDK 1.7 及以往的 JDK 版本中,Java 类信息.常量池.静态变 ...

  3. [shell 编程] if [ $# -eq 0 ]该语句是什么含义?

    $0: shell或shell脚本的名字$*:以一对双引号给出参数列表$@:将各个参数分别加双引号返回$#:参数的个数$_:代表上一个命令的最后一个参数$$:代表所在命令的PID$!:代表最后执行的后 ...

  4. python-sdk-demo的打包

    1.安装setuptools pip install python-setuptools 2.创建一个简单的包 下载demo https://github.com/cp-m/py-sdk-demo.g ...

  5. C#之Hello World(入门 )

    C#是一种简单.现代.面向对象和类型安全的编程语言. C#由C和C++发展而来.C#(英文发音C sharp)牢固地植根于C和C++语言族谱中,是Microsoft专门为使用.NET平台而创建的. • ...

  6. c3p0配置详解<转贴>

    <c3p0-config> <default-config> <!--当连接池中的连接耗尽的时候c3p0一次同时获取的连接数.Default: 3 --> < ...

  7. Redis使用记录

    登陆:cd /usr/local/bin 启动客户端:./redis-cli 查看所有key:keys * 查看key类型:type keyname 查看list长度:LLEN KEY_NAME 清空 ...

  8. Web应用——驾培管理系统之个人管理(作者:小圣)

    Web应用--驾培管理系统之个人管理(作者:小圣) 本节博文旨在实现本次Web应用的个人管理功能.能够在登陆后 查看并改动个人信息或者进行password改动.同一时候,在输入的时候进行表单验证,验证 ...

  9. Selenium webdriver Java 高级应用

    对于这一段还蛮有感慨的,只想说,代码还是需要自己去敲的. 1. 改变用户代理 import org.junit.AfterClass; import org.junit.BeforeClass; im ...

  10. c# 用OpenXmL读取.xlsx格式的Excel文件 返回DataTable

    1.须要引用的dll :  DocumentFormat.OpenXml.dll  ---须要安装一下OpenXml再引用 WindowsBase  ---直接在项目里加入引用 2.方法: /// & ...