UGUI之Aspect Ratio Fitter组件介绍

博客迁移

个人博客站点,欢迎访问,www.jiingfengji.tech

正文

组件截图如下:
这里写图片描述

1、Aspect Mode:AspectMode枚举类型

public enum AspectMode 
{ 	                  
	//不使用适合的纵横比
	None,
	      
	//让Height随着Width自动调节
	WidthControlsHeight,
	
	//让Width随着Height自动调节
	HeightControlsWidth,
	         
	//宽度、高度、位置和锚点都会被自动调整,以使得该矩形拟合父物体的矩形内,同时保持宽高比例
    FitInParent,
    
	//宽度、高度、位置和锚点都会被自动调整,以使得该矩形覆盖父物体的整个区域,同时保持宽高比
	EnvelopeParent
}

2、Aspect Ratio:宽高比例,width/height

下面根据实际情况来介绍一下该组件。在我的工作中,遇到一种情况,玩家获得一些奖励,做成一个通用的UI界面,该界面通常包括以下东西:标题、获得按钮、中间是一排物品item,显然中间的一排物品item会用到水平布局,并且居中显示,每一个item又包括一个icon和一个text(显示count),如果此时存在某一个icon比其他的大些,就会显得很突兀,这个时候我就用到了该组件

给item预制件 中的icon 添加一个父物体,然后给icon加一个Aspect Ratio Fitter,AspectMode选用FitInParent,Aspect Ratio的值需要在代码中计算,因为我们在做这个UI的时候 ,肯定是根据数据来动态实例化这些item的,每一个icon的宽高比不一样,所以需要在代码中计算,代码如下:

Rect rect = GetComponent<Image>().sprite.rect;
AspectRatioFitter fitter = GetComponent<AspectRatioFitter>();
fitter.aspectRatio = rect.width / rect.height;

这种做法就会保持icon的大小基本一致,当然如果美术团队出的物品图片资源都一致大小,咱们也就省去了这一步。

以上知识分享,如有错误,欢迎指出,共同学习,共同进步。

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值