Unity3D学习笔记(一)GUI控件的调用
GUI控件:
1.在Start中初始化,在OnGUI中调整。
2.公有变量才会出现在Inspector面板。
3.GUI控件的初始化和处理在OnGUI内完成。
4.JavaScript的中文为UTF-8编码可显示,CSharp的中文为UTF-16编码可显示。
基本信息:
屏幕宽高:Screen.width Screen.height
图片宽高:img.width img.height
一 标签Label
GUI.Label(Rect(x,y,width,height),<Str or Texture, such as Texture2D>);
二 按钮Button
var buttonTexture : Texture2D;
GUI.Button(Rect(x,y,width,height),buttonTexture);
设置文字颜色:GUI.color = Color.green;
设置背景颜色:GUI.backgroundColor = Color.red;
三 输入框TextField
message = GUI.TextField(Rect(x,y,width,height),message,size);
message = GUI.PasswordField(Rect(x,y,width,height),message,"*"[0],size);
返回值类型为String.
四 复选框与标签页selectToggle and Toolbar
var barResource : String[] = ["bar1","bar2","bar3",...];
var select : int;
var state : boolean;
select = GUI.Toolbar(Rect,default,barResource);//第二个参数为默认在第几个标签上,后面为名字列表,
有几个元素就有几个标签。
获取标签页:select = GUI.Toolbar(...);
获取复选框:state = GUI.Toggle(Rect,state,<name>);
五 滑动条Slider
var now_value : int = 0;
now_value = GUI.VerticalSlider(Rect,now_value,endvalue,startvalue)
六 滚动条ScrollView
定义Vector2变量储存水平和垂直滚动条位置。
var scrollPosition : Vector2;
scrollPosition[0] = <水平初始位置>;
scrollPosition[1] = <垂直初始位置>;
scrollPosition = GUI.BeginScrollView(<Rect滚动视图>,<Vector2起始位置>,
<Rect整体显示范围(大于parameter1)>,true,true);
//最后两个参数表示是否智能显示,即不该显示滚动条就不显示。
七 群组Group
群组内采用相对坐标,且群组移动组内物体统一移动。
GUI.BeginGroup(new Rect(x,y,width,height));
//在这里添加组内成员
GUI.EndGroup();
八 窗口Window
GUI.Window(ID,Rect,window_function,name);
使用:Debug.log(<string>);可以在最下面的消息面板输出字符串。
九 样式表GUISkin
使用:GUI.skin = mySkin来应用样式表
十 布局GUILayout
GUILayout自动计算显示区域。
大部分空间的绘制可以将GUI类换为GUILayout类。
GUILayout也可以设置布局的宽高。利用Width与Height方法。
使用:BeginHorizontal()与EndHorizontal()方法
默认是垂直布局,因此多个布局之间默认以垂直方式排列。
以及:BeginVertical()与EndVertical()方法
可以设定水平、垂直布局,且可以嵌套使用。
十一 链表ArrayList()类
使用 :var winArrayList = new Arraylist();声明
Add方法添加一个节点,RemoveAt方法删除一个节点。
对于窗口的用法:
winArrayList.Add(Rect);
winArrayList[i] = GUILayout.Window(...);
winArrayList.RemoveAt(windowID);
一二 静态图片DrawTexture
var pic : Texture2D;
GUI.DrawTexture(Rect,pic);
实用的类方法width和height可以获取图像的实际宽高,例如pic.width
十三 2D动画
使用Object[]类型的数组存储动画帧
载入动画帧的方法:
private var animation : Object[];
animation = Resources.LoadAll("<Folder Name>");//载入 /Resouurces/<Folder Name>/ 下全部图片
绘制动画就是采用GUI.DrawTexture方法。
Unity3D学习笔记(一)GUI控件的调用的更多相关文章
- WPF-学习笔记 动态修改控件Margin的值
原文:WPF-学习笔记 动态修改控件Margin的值 举例说明:动态添加一个TextBox到Grid中,并设置它的Margin: TextBox text = new TextBox(); t_gri ...
- 学习笔记:UpdatePanel控件
Asp.net UpdatePanel 允许用户构建一个丰富的,以客户端为中心的应用程序,引用UpdatePanel控件,能够实现页面的部分刷新,一个包含scriptManage和 UpdatePan ...
- 【jQuery UI 1.8 The User Interface Library for jQuery】.学习笔记.4.Tabs控件
之前,我们已经介绍了 jQuery UI 库,CSS 框架.下面,我们将学习这些有增强可视化效果,高度可配置的用户交互组件. Tab 的特性是,点击 tab 后,会高亮该 tab,并显示他的关联con ...
- Android学习笔记_30_常用控件使用
一.状态栏通知(Notification): 如果需要查看消息,可以拖动状态栏到屏幕下方即可查看消息.发送消息的代码如下: public void sendNotice(View v){ int ic ...
- 【jQuery UI 1.8 The User Interface Library for jQuery】.学习笔记.9.Progressbar控件
Progressbar控件用来显示任意进程的完成百分比. 默认安装启用 配置选项 控件暴露的事件API progressbar暴露的独一无二的方法 一些现实生活的例子 当前版本中,我们或系统必须明确进 ...
- 【jQuery UI 1.8 The User Interface Library for jQuery】.学习笔记.8.Datepicker控件
默认datepicker的安装启用 探索它的配置选项 安装启用一个触发按钮 配置一个供选择的动画 dateFormat选项 简单的国际化 多月datepicker 日期范围选择 datepicker的 ...
- 【jQuery UI 1.8 The User Interface Library for jQuery】.学习笔记.7.Slider控件
默认slider的安装启用 为slider自定义风格 修改配置选项 创建一个垂直的slider 设置最大最小值,和默认值 启用多个 手柄 和 范围 slider内置的回调事件 slider的方法 这个 ...
- 【jQuery UI 1.8 The User Interface Library for jQuery】.学习笔记.6.Dialog控件
习惯上,我们播放一条简短的信息,或向浏览者询问一个问题,都会用到dialog. 创建一个基本的dialog 使用dialog 选项 形式 启用内置动画 给dialog添加按钮 使用dialog回调函数 ...
- 【jQuery UI 1.8 The User Interface Library for jQuery】.学习笔记.5.Accordion控件
accordion是另一个UI控件,能允许你将一组content加入相互分隔的.能够被浏览者的交互打开或关闭的panels中.因此,它大多数的content在初始化的时候是隐藏的,很像tabs控件.每 ...
随机推荐
- 安卓高级2 swipeReferenceLayout 使用案例 和完善其自定义上拉
swipeReferenceLayout 无法完成上来加载数据所以自定义了一个类 Activity.java package qianfeng.com.swipelayoutdemo; import ...
- 热烈庆祝自已厉精13年开发的 DB查询分析器 7.01(最新版本) 在中关村在线本月获得近6000次的下载量
中国本土程序员马根峰(CSDN专访马根峰:海量数据处理与分析大师的中国本土程序员)推出的个人作品----万能数据库查询分析器,中文版本 DB 查询分析器.英文版本DB Query Analyzer.它 ...
- 解决linux删除文件后空间没有释放问题
linux删除文件后沒有释放空间 今天发现一台服务器的home空间满了,于是要清空没用的文件,当我删除文件后,发现可用空间沒有变化 os:centos4.7 现象: 发现当前磁盘空间使用情况: [ro ...
- Redis集群教程(Redis cluster tutorial)
本博文翻译自Redis官网:http://redis.io/topics/cluster-tutorial 本文档以温和的方式介绍Redis集群,不使用复杂的方式来理解分布式系统的概念. ...
- EBS中使用JAVA方式发送HTML格式邮件
转自huan.gu专栏:http://blog.csdn.net/gh320/article/details/17174769 EBS中使用JAVA方式发送HTML格式邮件 一.开发工具:JDevel ...
- PGM:贝叶斯网表示之朴素贝叶斯模型naive Bayes
http://blog.csdn.net/pipisorry/article/details/52469064 独立性质的利用 条件参数化和条件独立性假设被结合在一起,目的是对高维概率分布产生非常紧凑 ...
- Nginx的负载均衡 - 加权轮询 (Weighted Round Robin) 上篇
Nginx版本:1.9.1 我的博客:http://blog.csdn.net/zhangskd 算法介绍 来看一个简单的Nginx负载均衡配置. http { upstream cluster { ...
- 在github上最热门好评高的ROS相关功能包
在github上最热门最受欢迎的ROS相关功能包 下面依次列出,排名不分先后: 1 Simulation Tools In ROS https://github.com/ros-simulation ...
- ExpandableListView简单应用及listview模拟ExpandableListView
首先我们还是来看一些案例,还是拿搜狐新闻客户端,因为我天天上下班没事爱看这个东东,上班又没时间看新闻,上下班路途之余浏览下新闻打发时间嘛. 看这个效果挺棒吧,其实实现起来也不难,我 ...
- SVN关于忽略xcuserdata目录
SVN关于忽略xcuserdata目录,以iPhone Qzone工程为例Xcode工程,xcuserdata目录一般位于blur.xcodeproj目录下面,eg:jonesduan-MacBook ...