UGUI自动SetNativeSize并设置锚点到该组件四角(带快捷键)

  原文链接关于UGUI自动设置锚点到控件四个角的问题,我在原文的基础上加了一个SetNativeSize的快捷键,这样在拼接UI的时候就快多了。

using UnityEditor;
using UnityEngine;
using UnityEngine.UI;

public class AnchorAutoFit : MonoBehaviour
{
    [MenuItem("UGUI/SetNativeSize &s")]
    static void SetImgNative()
    {
        Image img = Selection.activeGameObject.GetComponent<Image>();
        if (img == null) return;
        img.SetNativeSize();
    }

    [MenuItem("UGUI/Anchors to Corners &a")]
    static void AnchorsToCorners()
    {
        RectTransform rect = Selection.activeTransform as RectTransform;
        RectTransform pt = Selection.activeTransform.parent as RectTransform;


        if (rect == null || pt == null) return;

        Vector2 newAnchorsMin = new Vector2(rect.anchorMin.x + rect.offsetMin.x / pt.rect.width,
                                            rect.anchorMin.y + rect.offsetMin.y / pt.rect.height);
        Vector2 newAnchorsMax = new Vector2(rect.anchorMax.x + rect.offsetMax.x / pt.rect.width,
                                            rect.anchorMax.y + rect.offsetMax.y / pt.rect.height);

        rect.anchorMin = newAnchorsMin;
        rect.anchorMax = newAnchorsMax;
        rect.offsetMin = rect.offsetMax = new Vector2(0, 0);
    }

    [MenuItem("UGUI/Corners to Anchors &d")]
    static void CornersToAnchors()
    {
        RectTransform rect = Selection.activeTransform as RectTransform;

        if (rect == null) return;

        rect.offsetMin = rect.offsetMax = new Vector2(0, 0);
    }
}

Unity 自定义Editor菜单快捷键

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值