1. 程式人生 > >Unity擴展GameObject等類中的方法

Unity擴展GameObject等類中的方法

!= col images 封裝 troy get unity 有時 使用

有時我們想在添加組件時避免重復添加,就需要先把存在的組件刪除。於是寫出擴展方法封裝AddComponent。

public static class Assist   {

    public static T AddComponentSingle<T>(this GameObject gameObject) where T : Component
    {
        return addcomponentSingle<T>(gameObject);
    }

    public static T AddComponentSingle<T>(this
Transform transform) where T : Component { return addcomponentSingle<T>(transform.gameObject); } private static T addcomponentSingle<T>(GameObject target) where T : Component { if (target.GetComponent<T>() != null) { GameObject.Destroy(target.GetComponent
<T>()); } return target.AddComponent<T>(); } }

通過這種方式就可以直接讓gameobject使用我們自己封裝的方法了。

技術分享

Unity擴展GameObject等類中的方法