Unity进阶技巧 - RectTransform详解
一、Pivot属性详解
首先为了让大家更好的理解内容,我在Unity中创建了两个UI控件,一个Plane控件,作为父对象,一个Image控件,作为子对象。
然后我们选中子对象,来看看它的RectTransform组件的属性,会看到有一堆的数据,那么这些数据是如何最终决定UI在屏幕中的位置和大小的呢?我们首先来看第一个重要的属性Pivot,因为它理解RectTransform这套UI布局方案的第一个关键。
Pivot我们可以暂且称它为中心轴(这个翻译不太准确,但为了便于理解,先这么叫着),它是一个X,Y值范围是0到1的点,这个点的会在Anchor(锚点)计算位置的时候会使用到。
二、Anchor属性详解
关于Anchor锚点可能接触过UI的朋友都了解一些,但是Unity中Anchor应该称它为锚框更为合理,因为它是由两个锚点(Min,Max)组成的一个矩形,当然也可以组成一个点(两个点重合)。而Unity为了方便我们调整锚框,在编辑视图给出了锚框的标示。
三、Pivot和Anchor的结合
在了解了Pivot和Anchor分别是什么后,我们就来看看Unity是如何使用这个两个东西来控制UI的布局
当两个锚点重合时,这种情况是我们最常用也是最容易理解的方式,我们将Anchor锚点放在黑框的正中间,然后将Pivot中心轴放在红框的正中间,然后我们改变黑框的大小和位置,看看红框会有什么变化
不管我们怎么拖动黑框,改变他大小和位置,红框的Pivot点到Anchor点的距离是始终不变的,也就是说红框物体会参照锚点来实时调整自己的位置,使自己的Pivot点到锚点的距离始终保持一致,而且值得一提的是,在这种情况下,红框物体的RectTransform组件中的属性是Width和Height,这个属性在后面的情况中会发生变化,大家需要注意下
更多unity2018的功能介绍请到paws3d爪爪学院查找。
Unity进阶技巧 - RectTransform详解相关推荐
- Unity:锚点详解
锚点时基于父对象让子对象定位用的.所以我们移动锚点时候的范围就是父对象的宽和高. 锚点在一起时 这四个三角形在一起时意味着锚点在一起 当锚点在一起的时候,图片的大小不会随着父对象的大小改变而改变:图片 ...
- Unity——RectTransform详解
Unity--RectTransform详解 目录 1.Anchor(Min,Max) 2.绝对与相对布局 3.Pivot 4.Offset(Min,Max) 5.SizeDelta 6.rect 7 ...
- 【原创-更新完毕】|日历拼图游戏的解决方案(C语言-进阶应用)-详解连载2
[原创]|日历拼图游戏的解决方案(C语言-进阶应用)-详解连载1_zhuyi8120的博客-CSDN博客 [原创]|日历拼图游戏的解决方案(C语言-进阶应用)-详解连载3_zhuyi8120的博客-C ...
- 转载 雨松mono Unity获取游戏对象详解(来自我的长微博)
Unity获取游戏对象详解(来自我的长微博) 转载 自 雨松mono 本文固定链接: http://www.xuanyusong.com/archives/2768 转载请注明: 雨松MOMO 201 ...
- python 拼音库_python有没有拼音库python进阶之socket详解
Socket的英文原义是"孔"或"插座".作为BSD UNIX的进程通信机制,通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句 ...
- 攻防世界web进阶区Web_php_wrong_nginx_config详解
攻防世界web进阶区Web_php_wrong_nginx_config详解 题目 详解 题目 打开发现无论我们输入什么他都会弹出网站建设不完全 那么我们使用御剑进行扫描,扫描到了admin和robo ...
- 攻防世界web进阶区ics-05详解
攻防世界web进阶区ics-05详解 题目 解法 preg_replace ctype_alnum strpos X-Forwarded-For 题目 我们只能点击一个地方 解法 御剑扫描有一个css ...
- 「翻译」Unity中的AssetBundle详解(一)
AssetBundles AssetBundle是一个存档文件,其中包含平台在运行时加载的特定资产(模型,纹理,预制,音频剪辑,甚至整个场景).AssetBundles可以表示彼此之间的依赖关系;例如 ...
- 【原创-更新完毕】|日历拼图游戏的解决方案(C语言-进阶应用)-详解连载1
[原创]|日历拼图游戏的解决方案(C语言-进阶应用)-详解连载2_zhuyi8120的博客-CSDN博客 [原创]|日历拼图游戏的解决方案(C语言-进阶应用)-详解连载3_zhuyi8120的博客-C ...
最新文章
- 传输控制协议(TCP)基础知识概述
- cnblog写博客还不错嘛
- 盘丝洞服务器维护,9月27日“盘丝洞”等服务器停机更新
- for vue 一行2列_awk 处理文本:行转列,列转行
- 了解 WPF 中的路由事件和命令
- 最简单的基于FFmpeg的AVfilter的例子-修正版
- 利用T-SQL语句创建数据表
- [No000017F]如何监控注册表的修改
- VMware VDI部署攻略之四:域用户配置及验收
- Spring在3.1版本后的bean获取方法的改变
- 直方图 帕累托图_工具讲解 | 用Excel绘制帕累托图
- android金币动效_Android 仿余额宝数字跳动动画效果完整代码
- 2017全球超算峰会召开 联想以智能超算赋能AI时代
- java 月度相减_java根据日期获取月龄,按照减法原理,先day相减,不够向month借;然后month相减,不够向year借;最后year相减。...
- canvas和svg
- C语言编程题目(精心准备,特别适合C语言小白)
- 任天堂Switch蓝牙发射器方案
- 华为鸿蒙系统支持什么手机_华为手机鸿蒙系统支持所有华为手机吗
- c语言版计算坐标方位角,坐标方位角算法在GIS中应用(最后修改).doc
- linux cadaver 命令,screen命令用法与cadaver