Update UIExtension.cs

This commit is contained in:
ALEXTANG
2023-08-18 17:10:41 +08:00
parent b1ccb1fd53
commit bbea9c4cee

View File

@@ -113,7 +113,7 @@ public static class UIExtension
return hadMouseDown; return hadMouseDown;
} }
public static void SetSprite(this Image image, string spriteName, UIBase uiBase, bool isSetNativeSize = false) public static void SetSprite(this Image image, string spriteName, bool isSetNativeSize = false,bool isAsync = false)
{ {
if (image == null) if (image == null)
{ {
@@ -126,32 +126,31 @@ public static class UIExtension
} }
else else
{ {
image.sprite = uiBase.LoadAsset<Sprite>(spriteName); if (!isAsync)
{
image.sprite = GameModule.Resource.LoadAsset<Sprite>(spriteName);
if (isSetNativeSize) if (isSetNativeSize)
{ {
image.SetNativeSize(); image.SetNativeSize();
} }
} }
}
public static void SetSprite(this UIBase uiBase, string spriteName, Image image, bool isSetNativeSize = false)
{
if (image == null)
{
return;
}
if (string.IsNullOrEmpty(spriteName))
{
image.sprite = null;
}
else else
{ {
image.sprite = uiBase.LoadAsset<Sprite>(spriteName); GameModule.Resource.LoadAssetAsync<Sprite>(spriteName, operation =>
{
if (image == null)
{
goto Dispose;
}
image.sprite = operation.AssetObject as Sprite;
if (isSetNativeSize) if (isSetNativeSize)
{ {
image.SetNativeSize(); image.SetNativeSize();
} }
Dispose:
operation.Dispose();
});
}
} }
} }
} }