瀏覽代碼

Merge remote-tracking branch 'remotes/origin/master' into ios_test

hexiaojie 10 月之前
父節點
當前提交
658453e8f8

+ 1 - 0
GameClient/Assets/Game/HotUpdate/Data/PoemGalleryDataManager.cs

@@ -9,6 +9,7 @@ namespace GFGGame
 {
     public class PoemGalleryDataManager : SingletonBase<PoemGalleryDataManager>
     {
+        public bool waitRelease = false;
         public const int pageCount = 10;
         private long _themeOrder = 0;
         /// <summary>

+ 23 - 0
GameClient/Assets/Game/HotUpdate/ServerProxy/MatchingCompetitionSproxy.cs

@@ -278,6 +278,14 @@ namespace GFGGame
         {
             var response = (S2C_GetPreviousWorksCollection)await MessageHelper.SendToServer(new C2S_GetPreviousWorksCollection { });
             if (!(response is { Error: ErrorCode.ERR_Success })) return false;
+       
+            foreach (var data in MatchingCompetitionDataManager.Instance._BeforeWorksList)
+            {
+                data.Bytes = null;
+                data.WorksInfo = null;
+                data.Ntexture?.Dispose();
+            }
+            
             MatchingCompetitionDataManager.Instance._BeforeWorksList.Clear();
             foreach (var item in response.WorksCollectionList)
             {
@@ -293,6 +301,14 @@ namespace GFGGame
         {
              var response = (S2C_GetOldJudgingRoundRankList)await MessageHelper.SendToServer(new C2S_GetOldJudgingRoundRankList { JudgingRoundOpenId = id});
             if (!(response is { Error: ErrorCode.ERR_Success })) return false;
+            
+            foreach (var data in MatchingCompetitionDataManager.Instance._BeforeRankList)
+            {
+                data.Bytes = null;
+                data.JudgingInfo = null;
+                data.Ntexture?.Dispose();
+            }
+            
             MatchingCompetitionDataManager.Instance._BeforeRankList.Clear();
             foreach (var item in response.JudgingRoundRoleInfoList)
             {
@@ -310,6 +326,13 @@ namespace GFGGame
         {
             var response = (S2C_GetJudgingRoundWorksList)await MessageHelper.SendToServer(new C2S_GetJudgingRoundWorksList { });
             if (!(response is { Error: ErrorCode.ERR_Success })) return false;
+            
+            foreach (var data in MatchingCompetitionDataManager.Instance.MatchingPhotoInfos)
+            {
+                data.Bytes = null;
+                data.Ntexture?.Dispose();
+            }
+            
             MatchingCompetitionDataManager.Instance.MatchingPhotoInfos.Clear();
             foreach (var item in response.JudgingRoundRoleInfoList)
             {

+ 1 - 0
GameClient/Assets/Game/HotUpdate/ServerProxy/PictureStorageHelper.cs

@@ -48,6 +48,7 @@ namespace GFGGame
                 yield return DownloadPicture(data, count);
             }
             if (callBack != null) callBack();
+            PoemGalleryDataManager.Instance.waitRelease = false;
             ET.Log.Debug("Download  finish!!!");
         }
         private static IEnumerator DownloadPicture(PoemGalleryData data, int count)

+ 10 - 0
GameClient/Assets/Game/HotUpdate/Views/Poem/PoemGalleryView.cs

@@ -754,6 +754,10 @@ namespace GFGGame
         private async void OnPullDownRelease()
         {
             if (!_comScroll.m_comHeader.target.visible || _scrollList.scrollPane.header.height < _scrollList.scrollPane.header.sourceHeight || isPullDown) return;
+            if(PoemGalleryDataManager.Instance.waitRelease)
+            {
+                return;
+            }
 
             isPullDown = true;
             _scrollList.scrollPane.LockHeader(_scrollList.scrollPane.header.sourceHeight);
@@ -762,6 +766,7 @@ namespace GFGGame
             // OnPullDownTimeComplete();
             if (result && isShowing)
             {
+                PoemGalleryDataManager.Instance.waitRelease = true;
                 Timers.inst.StartCoroutine(PictureStorageHelper.Download(_galleryDatas, 0, UpdateGalleryList));
             }
 
@@ -782,6 +787,10 @@ namespace GFGGame
         {
             GComponent header = _scrollList.scrollPane.header;
             if (!header.visible || header.height > header.sourceHeight || isPullDown) return;
+            if (PoemGalleryDataManager.Instance.waitRelease)
+            {
+                return;
+            }
 
             GComponent footer = _scrollList.scrollPane.footer;
             if (footer.height <= footer.sourceHeight || isPullUp) return;
@@ -793,6 +802,7 @@ namespace GFGGame
             bool result = await PoemGallerySProxy.ReqGalleryList(_sortType, _galleryDatas.Count, PoemGalleryDataManager.pageCount);
             if (result && isShowing)
             {
+                PoemGalleryDataManager.Instance.waitRelease = true;
                 Timers.inst.StartCoroutine(PictureStorageHelper.Download(_galleryDatas, _lastGalleryDatasCount, UpdateGalleryList));
             }
         }