UGUI_动态修改轴心点Pivot

UGUI_动态修改轴心点Pivot

效果

效果一
效果二

核心代码

核心代码为:UpdatePivot(this RectTransform rectTransform, Vector2 pivot) 动态更改轴心点并保持位置不变。
其余两个函数为动画协程,没有DoTween插件时可以调用。

public static class UnityHelper
{
   
 public static void UpdatePivot(this RectTransform rectTransform, Vector2 pivot)
 {
   
     if (rectTransform.pivot.Equals(pivot)) return;
     var pos = rectTransform.anchoredPosition;
     pos.x -= rectTransform.rect.width * (rectTransform.pivot.x - pivot.x);
     pos.y -= rectTransform.rect.height * (rectTransform.pivot.y - pivot.y);
     rectTransform.pivot = pivot;
     rectTransform.anchoredPosition = pos;
 }

 public static IEnumerator TweenScale(this Transform transform, Vector3 scale, float duration)
 {
   
     var time = 0f;
     var originalScale = transform.localScale;
     while (time < duration)
     {
   
         time += Time.deltaTime;
         transform.localScale = Vector3.Lerp(originalScale
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值