189 8069 5689

怎样进行Unity中GUI控件的调用-创新互联

怎样进行Unity中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),);

二 按钮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,);

五 滑动条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(,,
                ,true,true);
//最后两个参数表示是否智能显示,即不该显示滚动条就不显示。

七 群组Group
群组内采用相对坐标,且群组移动组内物体统一移动。
GUI.BeginGroup(new Rect(x,y,width,height));
//在这里添加组内成员
GUI.EndGroup();

八 窗口Window
GUI.Window(ID,Rect,window_function,name);
使用:Debug.log();可以在最下面的消息面板输出字符串。

九 样式表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("");//载入 /Resouurces// 下全部图片
绘制动画就是采用GUI.DrawTexture方法。

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注创新互联行业资讯频道,感谢您对创新互联的支持。

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享名称:怎样进行Unity中GUI控件的调用-创新互联
转载源于:http://cdxtjz.cn/article/ceeioh.html

其他资讯