Esempio n. 1
0
    // Use this for initialization
    void Start()
    {
        dropDown.options.Clear();
        dropDownAtlas.options.Clear();
        foreach (string iconName in iconNames)
        {
            Dropdown.OptionData optionData = new Dropdown.OptionData(iconName);
            dropDown.options.Add(optionData);
            dropDownAtlas.options.Add(optionData);
        }

        dropDown.onValueChanged.AddListener((index) =>
        {
            var selectName = iconNames[index];
            Log.Info("切换{0},{1}", selectName, index);
            var spriteLoader = AssetBundleLoader.Load(string.Format("uiatlas/button/{0}.png", selectName), (isOk, ab) =>
            {
                if (isOk)
                {
                    var names          = ab.GetAllAssetNames();
                    targetImage.sprite = ab.LoadAssetAsync <Sprite>(names != null && names.Length >= 1?names[0]:"main").asset as Sprite;
                    targetImage.SetNativeSize();
                    Log.Info("图片加载完成:{0}", selectName);
                }
            });
            if (!spriteLoaders.ContainsKey(spriteLoader.Url))
            {
                spriteLoaders.Add(spriteLoader.Url, spriteLoader);
            }
        });

        //从spriteAtlas加载
        dropDownAtlas.onValueChanged.AddListener((index) =>
        {
            var selectName = iconNames[index];
            Log.Info("切换{0},{1}", selectName, index);
            var atlasPath = "uiatlas/buttonatlas.spriteatlas";
            atlasLoader   = KSpriteAtlasLoader.Load(atlasPath, selectName, (isOk, loadSprite) =>
            {
                if (isOk)
                {
                    targetImage.sprite = loadSprite;
                    targetImage.SetNativeSize();
                    Log.Info("图片加载完成:{0}", selectName);
                }
            });
        });
        btnReleaseAtlas.onClick.AddListener(RelaseAtlasLoader);
        btnRelease.onClick.AddListener(RelaseSpriteLoader);
    }
Esempio n. 2
0
    // Use this for initialization
    void Start()
    {
        dropDown.options.Clear();
        dropDownAtlas.options.Clear();
        foreach (string iconName in iconNames)
        {
            Dropdown.OptionData optionData = new Dropdown.OptionData(iconName);
            dropDown.options.Add(optionData);
            dropDownAtlas.options.Add(optionData);
        }

        dropDown.onValueChanged.AddListener((index) =>
        {
            var selectName = iconNames[index];
            Log.Info("切换{0},{1}", selectName, index);
            var spriteLoader = SpriteLoader.Load(string.Format("uiatlas/button/{0}.png", selectName), (isOk, loadSprite) =>
            {
                if (isOk)
                {
                    targetImage.sprite = loadSprite;
                    targetImage.SetNativeSize();
                    Log.Info("图片加载完成:{0}", selectName);
                }
            });
            if (!spriteLoaders.ContainsKey(spriteLoader.Path))
            {
                spriteLoaders.Add(spriteLoader.Path, spriteLoader);
            }
        });

        //从spriteAtlas加载
        dropDownAtlas.onValueChanged.AddListener((index) =>
        {
            var selectName = iconNames[index];
            Log.Info("切换{0},{1}", selectName, index);
            var atlasPath = "uiatlas/buttonatlas.spriteatlas";
            atlasLoader   = KSpriteAtlasLoader.Load(atlasPath, selectName, (isOk, loadSprite) =>
            {
                if (isOk)
                {
                    targetImage.sprite = loadSprite;
                    targetImage.SetNativeSize();
                    Log.Info("图片加载完成:{0}", selectName);
                }
            });
        });
        btnReleaseAtlas.onClick.AddListener(RelaseAtlasLoader);
        btnRelease.onClick.AddListener(RelaseSpriteLoader);
    }