UGUI系列——RectTransform之UI宽高和SizeDelta

UGUI系列其他博文,可通过导航帖查看

前言

上一篇博文简单的介绍了一些锚点及轴心的一些概念,及Position的在锚点不同状态下的显示情况,下面我们继续介绍RectTransform的属性

UI的宽高是我们经常需要获取的属性,它分两种情况

(1)锚点集中在一起

这种情况下,宽高是直接显示出来的
在这里插入图片描述
在debug模式下,可以直接看到SizeDelta,它这个时候代表的就是rect的宽高
在这里插入图片描述
这种情况下,我们在代码里,就有两种方式获取到当前UI的宽高

RectTransform rect = transform.GetComponent<RectTransform>();

1)通过sizeDelta
rect.sizeDelta

2)通过rect
rect.rect.size
它还有两个分别表示宽高的属性也可以使用
rect.rect.height
rect.rect.width

当前情况下,它们的输出值是一样的
在这里插入图片描述

(2)锚点分开

例如像这样
在这里插入图片描述
这个时候, 在原本显示宽高的地方,显示的属性就会发生变化

以Left为例,表示的是rect的左边到锚点形成的图形的左边的距离
在这里插入图片描述
这个时候
在这里插入图片描述
SizeDelta的x分量,表示的left和right的值的和
SizeDelta的y分量,表示的top和bottom的值的和

所以这个时候,你要在代码中获取UI的宽高尺寸,就需要用Rect属性,而不是SizeDelta
在这里插入图片描述

我会在我的公众号上推送新的博文,也可以帮大家解答问题
微信公众号 Andy and Unity 搜索名称或扫描二维码
在这里插入图片描述
希望我们能共同成长,共同进步

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值