Example #1
0
    /// <summary>
    /// 为每个大类下添加一个子物体 Main
    /// </summary>
    /// <param name="granule">某一颗粒大类</param>
    public void CreateMain(GameObject granule)
    {
        if (PrefabObj)
        {
            var prefab = Object.Instantiate(PrefabObj, granule.transform);
            Undo.RegisterCreatedObjectUndo(prefab, "MainPrefab");

            prefab.name = PrefabObj.name;
            // 给 Main 更换 Sprite ,并且直接传值给颗粒大类的 Image;
            prefab.transform.GetComponent <Image>().sprite = ChinarAtlas.LoadSprite("UI/Assembling/Granule Library", "零件库-" + granule.name);
            granule.GetComponent <Button>().targetGraphic  = granule.transform.Find("Main").GetComponent <Image>();
        }
        else
        {
            WindowTips(" Main 的预设不能为空");
        }
    }
Example #2
0
 /// <summary>
 /// 第二种:AssetBundle加载 —— 外部
 /// </summary>
 private void AssetBundleLoadMethod()
 {
     UiAssetBundleImage.sprite = ChinarAtlas.LoadSprite(Application.streamingAssetsPath + "/ChinarAssetBundles/atlas/chinar.unity3d", "Chinar2", false);
 }
Example #3
0
 /// <summary>
 /// 第一种:Resources加载 —— 内部
 /// </summary>
 private void ResourcesLoadMethod()
 {
     UiResourcesImage.sprite = ChinarAtlas.LoadSprite("Texture/Atlas/Chinar", "Chinar1");
 }