zhaoyang il y a 3 ans
Parent
commit
ef5c39404f

+ 19 - 6
GameClient/Assets/Game/HotUpdate/Views/FieldGuide/FieldGuideView.cs

@@ -38,14 +38,17 @@ namespace GFGGame
             _ui.m_compBanner.m_listTab.onClickItem.Add(OnClickListBannerItem);
             _ui.m_compBanner.m_loaderPic.onClick.Add(OnClickBannerPic);
 
+
+
+        }
+        protected override void AddEventListener()
+        {
             EventAgent.AddEventListener(ConstMessage.SUIT_GUIDE_BOX_BONUS, () =>
-            {
-                _ui.m_listGuide.numItems = _listGuideDatas.Length;
-            });
+           {
+               _ui.m_listGuide.numItems = _listGuideDatas.Length;
+           });
             EventAgent.AddEventListener(ConstMessage.JUMP_TO_SOURCE, this.Hide);
-
         }
-
         protected override void OnShown()
         {
             base.OnShown();
@@ -62,7 +65,14 @@ namespace GFGGame
             base.OnHide();
             Timers.inst.Remove(SwitchBannerPic);
         }
-
+        protected override void RemoveEventListener()
+        {
+            EventAgent.RemoveEventListener(ConstMessage.SUIT_GUIDE_BOX_BONUS, () =>
+           {
+               _ui.m_listGuide.numItems = _listGuideDatas.Length;
+           });
+            EventAgent.RemoveEventListener(ConstMessage.JUMP_TO_SOURCE, this.Hide);
+        }
         private void OnClickBtnBack()
         {
             // this.Hide();
@@ -74,6 +84,7 @@ namespace GFGGame
             UI_ButtonBannerPage listItem = UI_ButtonBannerPage.Proxy(item);
             int id = _listBannerDatas[index];
             listItem.target.data = id;
+            UI_ButtonBannerPage.ProxyEnd();
         }
 
         private void OnClickBannerPic()
@@ -96,6 +107,7 @@ namespace GFGGame
             listItem.target.data = id;
             bool red = actions[index]();
             RedDotController.Instance.SetComRedDot(listItem.target, red, "", -20);
+            UI_CompGuideItem.ProxyEnd();
         }
 
         private void OnClickListBannerItem(EventContext context)
@@ -141,6 +153,7 @@ namespace GFGGame
                 GetGuideProgress(id, out haveCount, out totalCount);
                 decimal value = Math.Floor((decimal)100 * haveCount / totalCount);
                 listItem.m_txtProgress.text = value + "%";
+                UI_CompGuideItem.ProxyEnd();
             }
         }
 

+ 14 - 4
GameClient/Assets/Game/HotUpdate/Views/FieldGuide/SuitGuideView.cs

@@ -44,9 +44,13 @@ namespace GFGGame
             _ui.m_btnHaveGot.onChanged.Add(OnClickBtnHaveGot);
             _ui.m_btnNotGet.onChanged.Add(OnClickBtnNotGet);
 
+        }
+        protected override void AddEventListener()
+        {
             EventAgent.AddEventListener(ConstMessage.JUMP_TO_SOURCE, this.Hide);
+            EventAgent.AddEventListener(ConstMessage.ITEM_CHANGED, UpdateSuitStatus);
+            EventAgent.AddEventListener(ConstMessage.SUIT_BOX_STATUS_CHANGED, UpdateSuitBoxStatus);
         }
-
         protected override void OnShown()
         {
             base.OnShown();
@@ -57,18 +61,21 @@ namespace GFGGame
 
             UpdateListType();
 
-            EventAgent.AddEventListener(ConstMessage.ITEM_CHANGED, UpdateSuitStatus);
-            EventAgent.AddEventListener(ConstMessage.SUIT_BOX_STATUS_CHANGED, UpdateSuitBoxStatus);
+
         }
 
         protected override void OnHide()
         {
             base.OnHide();
             _valueBarController.OnHide();
+
+        }
+        protected override void RemoveEventListener()
+        {
+            EventAgent.AddEventListener(ConstMessage.JUMP_TO_SOURCE, this.Hide);
             EventAgent.RemoveEventListener(ConstMessage.ITEM_CHANGED, UpdateSuitStatus);
             EventAgent.RemoveEventListener(ConstMessage.SUIT_BOX_STATUS_CHANGED, UpdateSuitBoxStatus);
         }
-
         private void OnClickListTypeItem()
         {
             UpdateListSuit();
@@ -121,6 +128,7 @@ namespace GFGGame
                 {
                     UpdateSuitStatusView(listItem);
                 }
+                UI_CompSuitItem.ProxyEnd();
             }
         }
         private void UpdateListType()
@@ -178,6 +186,7 @@ namespace GFGGame
             {
                 SuitUtil.ShowSuitGuideBonus(suitId);
             });
+            UI_CompSuitItem.ProxyEnd();
         }
 
         private void UpdateSuitStatus(EventContext eventContext)
@@ -187,6 +196,7 @@ namespace GFGGame
             {
                 UI_CompSuitItem listItem = UI_CompSuitItem.Proxy(_ui.m_listSuit.GetChildAt(i));
                 UpdateSuitStatusView(listItem);
+                UI_CompSuitItem.ProxyEnd();
             }
         }
 

+ 8 - 3
GameClient/Assets/Game/HotUpdate/Views/FieldGuide/SuitPartsDetailView.cs

@@ -27,10 +27,12 @@ namespace GFGGame
 
             _ui.m_listParts.itemRenderer = ListPartsItemRenderer;
             _ui.m_listParts.onClickItem.Add(OnClickListPartsItem);
-            EventAgent.AddEventListener(ConstMessage.JUMP_TO_SOURCE, this.Hide);
 
         }
-
+        protected override void AddEventListener()
+        {
+            EventAgent.AddEventListener(ConstMessage.JUMP_TO_SOURCE, this.Hide);
+        }
         protected override void OnShown()
         {
             base.OnShown();
@@ -50,7 +52,10 @@ namespace GFGGame
         {
             base.OnHide();
         }
-
+        protected override void RemoveEventListener()
+        {
+            EventAgent.RemoveEventListener(ConstMessage.JUMP_TO_SOURCE, this.Hide);
+        }
         private void ListPartsItemRenderer(int index, GObject obj)
         {
             int itemId = _items[index];