Unity版本:4.5.1  NGUI版本:3.6.5

  注意NGUI版本,网上的大部分教程都是2.x版本的,在步骤上面略有不同,此文适合初学者。

示例:

  通过NGUI创建一个背景和按钮。

1.首先创建一个新场景,并保存,在此场景取名为Test:

  在Unity主界面上:File — New Scene,然后保存场景,File — Save Scene As.. 在此,场景命名为Test,可以在Unity中看到如下效果:

    

2.网上的绝大部分教程都说要删除场景中的自带摄像机,即上文左侧图中的 “Main Camere”,但是,感觉没删除也不会有问题,可以看到效果,这里自由选择。接下来通过NGUI开始创建:

NGUI —— Create —— 2D UI :

可以看到效果如下所示:

3、选择UI Root下的Camera,通过NGUI——Create——Anchor创建Anchor,在Anchor下添加一个Panel:

效果如下:

5、接下来添加按钮背景:

打开Widger Wizard:

在界面中点击Add To完成按钮的背景设置:

6、这时候创建一个C#脚本用来响应按钮的点击:

代码如下:

using UnityEngine;
using System.Collections; public class BtnClick : MonoBehaviour { // Use this for initialization
void Start () {
} // Update is called once per frame
void Update () {
} void OnClick()
{
Debug.Log ("xx");
}
}

BtnClick

添加值Sprite,可以看到在点击时不会出现"按钮点击"字样;

7、就需要手动为按钮添加一个碰撞器:

选中Sprite,创建一个碰撞器:

这时再去测试可以看到,点击按钮时会出现"按钮点击"字样。

8、可以为按钮创建Label,通过Widger Wizard为Sprite添加一个Label,可以修改字体大小和颜色:

9、完成一个简单的按钮,效果如下:

Unity NGUI 创建简单的按钮的更多相关文章

  1. Unity3D 学习 创建简单的按钮、相应事件

    选择file -->new project 然后保存到相应的地方 下面是这个刚创建的工程效果图. 然后创建一个C# Script ||定位到最左下角找到  assets --> creat ...

  2. Unity NGUI 2D场景添加按钮

    比如说先添加一个sprite 在sprite加上NGUI的 UI Button 然后重点来了  加上Box Collider 2D(重点:2D 千万不要加 Box Collider) 将Box Col ...

  3. Unity NGUI中Anchor的用法

    unity版本 4.5.1 NGUI版本 3.6.5 通过NGUI中的Anchor设置按钮位置. 1.首先用NGUI创建两个按钮,按钮的创建在Hierachy窗口中必须按如下形式: Anchor用于确 ...

  4. Unity NGUI 网络斗地主 -界面制作

    Unity NGUI 网络斗地主 -界面制作 源文件在群(63438968群共享!) @灰太龙 这一节说一下NGUI的界面摆放,并且教会大家使用NGUI的自适应功能! 在这里感谢@Gamer,是他给我 ...

  5. Unity NGUI中动态添加和删除sprite

    (以后,参考链接和作者将在文章首部给出,转载请保留此部分内容) 参考链接:http://www.narkii.com/club/thread-299977-1.html,作者:纳金网 比巴卜: 参考链 ...

  6. 在Unity中创建攻击Slot系统

    http://www.manew.com/thread-109310-1-1.html 马上注册,结交更多好友,享用更多功能,让你轻松玩转社区. 您需要 登录 才可以下载或查看,没有帐号?注册帐号  ...

  7. Unity NGUI学习

    环境 Unity4.3    NGUI v3.68 导入 Project界面->右键->import package->custom package载入安装包即可 untiy4.6用 ...

  8. unity 编辑器扩展简单入门

    unity 编辑器扩展简单入门 通过使用编辑器扩展,我们可以对一些机械的操作实现自动化,而不用使用额外的环境,将工具与开发环境融为一体:并且,编辑器扩展也提供GUI库,来实现可视化操作:编辑器扩展甚至 ...

  9. [.NET] WebApi 生成帮助文档及顺便自动创建简单的测试工具

    ==========最终的效果图========== ==========下面开始干活:生成帮助文档========== 一.创建 WebApi 项目 二.找到 HelpPageConfig.cs 并 ...

随机推荐

  1. [转] 考验你的JavaScript底细

    http://sentsin.com/ 尽管今日的JavaScript已经突飞猛进,但JS的许多特性仍然保留,以下题目并不是有意设坑,许多地方将验证你的JS底细,如果错了一半,请别告诉我你从事前端. ...

  2. ubuntu14.04安装samba、vpn

    前言: VPN+SAMBA,能够让你将网上申请到的VPS目录映射成自己电脑的网络驱动器,方便开发. 一.安装samba 来源:http://jingyan.baidu.com/article/00a0 ...

  3. 第八篇:python高级之多进程

    python高级之多进程   python高级之多进程 本节内容 多进程概念 Process类 进程间通讯 进程同步 进程池 1.多进程概念 multiprocessing is a package ...

  4. node里如何查看浏览器信息

    'use strict'; let http = require(`http`); http.createServer((req, res) => { console.log(req.heade ...

  5. TabHost理解与使用

    一.继承关系 java.lang.Object ↳ android.view.View ↳ android.view.ViewGroup ↳ android.widget.FrameLayout ↳ ...

  6. 在模型中获取网络数据,刷新tableView

    model .h #import <Foundation/Foundation.h> #import "AFHTTPRequestOperationManager.h" ...

  7. jq 图片裁剪

    1.html <div class="jcropbox" style="display: none"> <img src="&quo ...

  8. 258. Add Digits(C++)

    258. Add Digits Given a non-negative integer num, repeatedly add all its digits until the result has ...

  9. 【BZOJ1012】【树状数组求区间最值】最大数maxnumber

    Description 现在请求你维护一个数列,要求提供以下两种操作: 1. 查询操作.语法:Q L 功能:查询当前数列中末尾L个数中的最大的数,并输出这个数的值.限制:L不超过当前数列的长度. 2. ...

  10. php定时执行任务的几个方法

    PHP的实现决定了它没有Java和.Net这种AppServer的概念, 而http协议是一个无状态的协议, php只能被用户触发, 被调用, 调用后会自动退出内存, 没有常驻内存, 就没有办法准确的 ...