UIAssetModule.cs 972 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. using System;
  2. using XGame.Framework.Asset;
  3. namespace XGame.Framework.UI
  4. {
  5. internal class UIAssetModule : IUIAssetModule, IDisposable
  6. {
  7. private IAssetModule _assetModule;
  8. public UIAssetModule()
  9. {
  10. _assetModule = new AssetModule();
  11. }
  12. IAssetLoadAsync<TResult> IUIAssetModule.LoadAsync<TResult>(string addressableName)
  13. {
  14. return _assetModule.LoadAsync<TResult>(addressableName);
  15. }
  16. void IUIAssetModule.Recycle(UnityEngine.Object obj)
  17. {
  18. _assetModule.Recycle(obj);
  19. }
  20. void IUIAssetModule.StopAllAsyncs()
  21. {
  22. _assetModule.StopAllAsyncs();
  23. }
  24. //void IUIAssetModule.UnloadUnusedAssets()
  25. //{
  26. // _assetModule.UnloadUnusedAssets();
  27. //}
  28. void IDisposable.Dispose()
  29. {
  30. (_assetModule as IDisposable)?.Dispose();
  31. _assetModule = null;
  32. }
  33. }
  34. }