Esempio n. 1
0
        void __SetSprite(object refer_, Image image_, string real_url_, string spriteName, bool nativeSize_)
        {
            SprAtlas atlas = m_assetCache.LoadSync(real_url_, refer_) as SprAtlas;

            if (atlas == null)
            {
                //如果找不到资源,已经报错了,这里不需要报
                return;
            }

            if (string.IsNullOrEmpty(spriteName))
            {
                //传空时,取图集名称
                spriteName = atlas.file_name;
            }

            Sprite sprite = atlas.GetSprite(spriteName);

            if (sprite == null)
            {
                Log.Error("图集缺少图片:" + real_url_ + ", " + spriteName);
                return;
            }

            image_.sprite = null;
            image_.sprite = sprite;

            if (nativeSize_)
            {
                image_.SetNativeSize();
            }

            Vector4 border = sprite.border;

            if (border.x > 0 || border.y > 0 || border.z > 0 || border.w > 0)
            {
                //九宫格
                image_.type = Image.Type.Sliced;
            }
            else
            {
                image_.type = Image.Type.Simple;
            }
        }