Unity3D - UGUI的手动搭建
了解UGUI组件的搭建方式,有助于搭建我们自己的UI界面。
Text 文本
text 是UGUI中的基本控件,在Hierarchyi面板创建一个空物体 - 给这个空物体添加一个Text组件即可实现与text空间相同的功能。
Image 图像
Image 是UGUI中的基本控件,在Hierarchyi面板创建一个空物体 - 给这个空物体添加一个Image组件即可实现与Image控件相同的功能。
Raw Image 原始图片
Raw Image 和 Image基本相同,
功能上Raw Image比Image少了image Type功能,Raw Image可以添加所有类型的图片 而Image只能添加Spritie(精灵)类型的图片;
性能上由于Raw Image比Image的功能少,Raw Image的性能比Image 的性能要好,Raw Image主要用于做一些不需要在游戏运行中不需要改动的图片,例如 背景图片。
Button 按钮
Button中的组件:Image组件,Button组件,Text组件(非必需)。
搭建方式:
1.在Canvas下创建一个空物体(改名为Button)
2.给这个Button添加一个Image组件和一个Button组件
3.在创建一个空物体作为Button的子物体(改名为Text)
4.给Text添加一个Text组件,即完成了控件Button的搭建。
Toggle 开关
Toggle中的组件:Toggle组件,两个Image组件,Text组件
搭建方式:
1.在Canvas创建一个空物体(改名为Toggle)
2.给Toggle添加一个Toggle组件
3.添加一个Image控件作为Toggle的子物体,用于做开关的背景(将该控件改名为Background)
4.添加一个Image控件作为Background的子物体,用于做开关的前景(将该空间改名为Checkmark)
5.创建一个空物体作为Toggle的子物体(改名为Label)
6.给Label添加一个Image组件或添加一个Text组件(注意:Image组件、Text组件、Raw Image组件不能同时存在于一个物体上)
7.点击物体Toggle,找到它上面的Toggle组件,将Background拖拽到TargetGraphic属性上,在将Checkmark拖拽到Graphic属性上
8.最后将每个物体调整到合适大小,即完成了控件Toggle的搭建
Slider 滑竿
Slider中的组件:Slider组件,三个Image组件
搭建方式:
1.在Hierarchy面板创建一个空物体(改名为Slider)
2.给Slider添加一个Slider组件
3.添加三个Imge控件作为Slider的子物体(分别改名为Background、Fill、Handle)
4.给每个子物体添加图片,并调整到合适的大小
5.点击物体Slider,找到它上面的Slider组件,将Background拖拽到Target Graphic属性上 作为Handle未经过的区域,将Fill拖拽到Fill Tect属性上作为Handle经过的区域,将Handel拖拽到Handel Reck属性上作为拖动点。
6.调整各个物体的大小即可完成Slider的创建。
注意:
调整图片时Slider组件的Value值需为1,Handle需在滑竿右边。
若果实现功能时图片位置异常,可能是Background和Fill的位置放反了。
Scrollbar 滚动工具
Scrollbar中的组件:Scrollbat组件、两个Image组件
搭建方式:
1.在Canvas下创建一个空物体(改名为Scrollbar)
2.给Scrollbar添加一个Scrollbar组件和一个Image组件
3.添加一个Iamge控件作为Scrollbar的子物体(改名为Handle)
4.点击物体Scrollbar,找到Scrollbar组件,将Handle拖拽到Target Graphic的位置和Handle Rect的位置
5.调整各个物体到合适大小即可完成Scrollbat的搭建
注意:搭建时和Slider不同,创建滑块的位置时value值要为0,若为1则滑动条右侧会有空隙。
Dropdowm 下拉菜单
Input Field 输入框
Input Fild中的组件:Input Fild组件、Image组件、两个Text组件
搭建方式:
1.在Canvas下创建一个空物体(改名为InputField)
2.给InputField添加一个InputField组件和一个Image组件
3.添加两个Text控件作为InputField的子物体(分别改名为Text、Placeholder)
4.点击物体InputField,找到InputField组件,Target Graphic一般会默认添加它自身,将Text拖拽到Text Component的位置 用于显示用户输入的文本,将Placeholder拖拽到Placeholder的位置 用于显示提示信息(提示用户输入的内容)。
5.调整各个物体到合适大小即可完成Input Dield的搭建
Canvas 画布
Panel 面板
Scroll View 滚动视图
Scroll View 中的组件:Image组件和Scroll Rect组件、Image组件和Mask组件、
搭建方式:
1.在Canvas下创建一个空物体(改名为ScrollView)
2.给ScrollView添加一个ScrollRect组件和一个Image,Image可添加图片做背景。
3.创建一个空物体作为ScrillView的子物体(改名为viewport),该物体的大小为可见范围,若需要显示的内容超出了这个范围那么超出的部分会被隐藏。
4.给viewport添加一个Mask组件和一个Image组件,(Mask中的Show Mask Graphic默认是勾选的 意思是显示viewport的背景图片,如取消勾选 则viewport中背景图片将不可见)
5.创建一个空物体作为viewport的子物体(改名为Content),若Content的范围大于viewport的范围,那么覆盖部分可以在游戏运行过程中拖拽显示,也可以将要显示的内容作为Content的子物体,但是该子物体需要在Content范围内。
6.点击ScrollView找到Scroll Rect组件,将Viewport拖拽到Viweport的位置,将Content拖拽到Content的位置。
7.调整各个物体到合适大小即可完成ScrollView的搭建
Event System 事件系统
在自己搭建UI界面时最好先创建一个UGUI提供的控件,然后把控件删除保留Canvas和EventSystem
Unity3D - UGUI的手动搭建的更多相关文章
- Unity3d UGUI 通用Confirm确认对话框实现(Inventory Pro学习总结)
背景 曾几何时,在Winform中,使用MessageBox对话框是如此happy,后来还有人封装了可以选择各种图标和带隐藏详情的MessageBox,现在Unity3d UGui就没有了这样的好事情 ...
- WindowsServer2012 R2 64位中文标准版(IIS8.5)下手动搭建PHP环境详细图文教程(二)安装IIS8.5
//来源:http://www.imaoye.com/Technology/WindowsServer2012R264IIS85.html 阿里云服务器ECS Windows Server 2012 ...
- Linux手动搭建LAMP环境
当你看到标题里的“手动搭建”,你是不是会想,难不成还有“自动搭建”?当然......不是,这里的“手动搭建”是指按部就班的搭建Apache.MySQL.PHP环境,是相对于集成软件包而言的.所以你是不 ...
- php 手动搭建环境
php手动搭建环境有好多种组合,版本号不一致,会导致搭建失败. 我搭建的组合是: php5.6+MySQL5.6+Apache2.4的组合. 一.PHP语言包下载 首先从官网上下载php5.6 htt ...
- 混合式app ionic2.x 手动搭建开发环境教程分享(nodejs,jdk,ant,androidsdk)
1.ionic简介 为什么选用ionic: 彻底开源且免费 性能优异 基于红的发紫的AngularJs 漂亮的UI 强大的命令行(基于更热门的nodejs) 开发团队非常活跃 ngCordova,将主 ...
- React 系列文章(1): npm 手动搭建React 运行实例 (新手必看)
摘 要 刚接触React 开发, 在摸索中构建react 运行环境,总会遇到各种坑:本文,将用最短时间解决webpack+react 环境搭建问题. 1.如果你还没有React基础 看这里. 2.如果 ...
- PHP手动搭建环境
php手动搭建环境有好多种组合,版本号不一致,会导致搭建失败. 我搭建的组合是: php5.6+MySQL5.6+Apache2.4的组合. 一.PHP语言包下载 首先从官网上下载php5.6 htt ...
- 手动搭建 redis 集群
转自http://meia.fun/article/1544161420745 手动搭建 redis 集群 redis 基本命令: 启动 redis 服务:redis-server xxx.conf ...
- .NET完全手动搭建三层B/S架构
简介:三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(WebUI).业务逻辑层(BusinessLogicLayer).数据访问层(DataAc ...
随机推荐
- HDU 1007 Quoit Design最近点对( 分治法)
题意: 给出平面上的n个点,问任意点对之间的最短距离是多少? 思路: 先将所有点按照x坐标排序,用二分法将n个点一分为二个部分,递归下去直到剩下两或一个点.对于一个部分,左右部分的答案分别都知道,那么 ...
- UVALive 3942 Remember The Word (Tire)
状态是DAG,因此方案用dp统计,dp[i] = sum(dp[i+len(x)]),x是以i开头的前缀且是单词,关键在于快速判断一个前缀是不是单词,可用Trie. 每一次转移的复杂度是O(maxle ...
- [uva816]AbbottsRevenge Abbott的复仇(经典迷宫BFS)
这题思路就普通的BFS加上一个维度朝向,主要是要注意输入,输出,以及细节的处理 #include<cstdio> #include<cstring> #include<q ...
- 2018.2.25 关于JavaScript
关于JavaScript 1.数组的归约函数reduce(function(PREV,CUR,I){})会从做导游进行迭代,每次返回的值为下一次的prev参数. 2.在循环遍历数组时若是想在找到结果后 ...
- Java替换手机号掩码
String tel = "18304072984"; // 括号表示组,被替换的部分$n表示第n组的内容 tel = tel.replaceAll("(\\d{3})\ ...
- JavaScript无提示关闭当前页面窗口,兼容IE/Firefox/Chrome
<script type="text/javascript" language="javascript"> function fc(){ var b ...
- IDEA设置每次打开重新选择项目
通过这里,选择settings,或者进入之后的FILE->settings.搜索System 即可出现
- cocos2d-x之CCCardinalSplineBy
CCCardinalSplineBy概念 这个类是样条曲线动作,其创建函数CCCardinalSplineBy::create(float duration, cocos2d::CCPointArra ...
- 如何在vue项目中引用Iview
iview 安装 npm install iview --save 引入iview import Vue from 'vue' import App from './App' import route ...
- vue + axios---封装一个http请求
在使用vue开发时,官方推荐使用axios来请求接口 // axios官方地址 https://github.com/axios/axios 但是axios并不像 vue-resource 一样拥有i ...