AlicizaX/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/Implement/SetSpriteExtensions.cs

32 lines
1.3 KiB
C#
Raw Normal View History

2025-04-28 19:45:45 +08:00
using System.Threading;
using AlicizaX.Resource.Runtime;
using AlicizaX;
2025-01-23 19:06:48 +08:00
using UnityEngine;
using UnityEngine.UI;
public static class SetSpriteExtensions
{
/// <summary>
/// 设置图片。
/// </summary>
/// <param name="image">UI/Image。</param>
/// <param name="location">资源定位地址。</param>
/// <param name="setNativeSize">是否使用原始分辨率。</param>
2025-04-28 19:45:45 +08:00
/// <param name="cancellationToken">取消设置资源的Token。</param>
public static void SetSprite(this Image image, string location, bool setNativeSize = false, CancellationToken cancellationToken = default)
2025-01-23 19:06:48 +08:00
{
2025-04-28 19:45:45 +08:00
ResourceExtComponent.Instance.SetAssetByResources<Sprite>(SetSpriteObject.Create(image, location, setNativeSize, cancellationToken)).Forget();
2025-01-23 19:06:48 +08:00
}
/// <summary>
/// 设置图片。
/// </summary>
/// <param name="spriteRenderer">2D/SpriteRender。</param>
/// <param name="location">资源定位地址。</param>
2025-04-28 19:45:45 +08:00
/// <param name="cancellationToken">取消设置资源的Token。</param>
public static void SetSprite(this SpriteRenderer spriteRenderer, string location, CancellationToken cancellationToken = default)
2025-01-23 19:06:48 +08:00
{
2025-04-28 19:45:45 +08:00
ResourceExtComponent.Instance.SetAssetByResources<Sprite>(SetSpriteObject.Create(spriteRenderer, location, cancellationToken)).Forget();
2025-01-23 19:06:48 +08:00
}
2025-04-28 19:45:45 +08:00
}