diff --git a/lua_probject/base_project/Game/View/Common/BaseWindow.lua b/lua_probject/base_project/Game/View/Common/BaseWindow.lua index 260c51a1..41a41df6 100644 --- a/lua_probject/base_project/Game/View/Common/BaseWindow.lua +++ b/lua_probject/base_project/Game/View/Common/BaseWindow.lua @@ -263,3 +263,11 @@ function BaseWindow.DestroyAll() WindowQueue = {} WindowMap = {} end + +function BaseWindow.FindWindow(viewName) + for _, view in pairs(WindowQueue) do + if view.class == viewName then + return view + end + end +end \ No newline at end of file diff --git a/lua_probject/base_project/Game/View/Family/FamilyAuditNumber.lua b/lua_probject/base_project/Game/View/Family/FamilyAuditNumber.lua index 44e109b6..919d48a6 100644 --- a/lua_probject/base_project/Game/View/Family/FamilyAuditNumber.lua +++ b/lua_probject/base_project/Game/View/Family/FamilyAuditNumber.lua @@ -1,10 +1,7 @@ ---local NumberRemark = import(".FamilyNumberRemark") local GroupSetTagView = import("..NewGroup.GroupSetTagView") local FamilyAuditNumber = {} -local M = FamilyAuditNumber - local function AddItem(self, index, obj) local group = DataManager.groups:get(self._group.id) local info = group.joinsData[index + 1] @@ -23,40 +20,63 @@ local function AddItem(self, index, obj) end function FamilyAuditNumber.new(root) - setmetatable(M, { __index = root }) - local self = setmetatable({}, { __index = M }) - - local list = self._view:GetChild('list_auditNumberList') - --list:RemoveChildrenToPool() - --list:SetVirtual() - list.itemRenderer = function(index, obj) - AddItem(self, index, obj) - end - + setmetatable(FamilyAuditNumber, { __index = BaseView }) + local self = setmetatable({}, { __index = FamilyAuditNumber }) + self.class = "FamilyAuditNumber" + self._scale = true + self._animation = false + self:init("ui://Family/com_auditNumber") return self end -function M:Reflash() - local list = self._view:GetChild('list_auditNumberList') - local group = DataManager.groups:get(self._group.id) - list.numItems = #group.joinsData +function FamilyAuditNumber:init(url) + BaseView.InitView(self, url) + + self.btn_close = self._view:GetChild("btn_close") + self.list_auditNumberList = self._view:GetChild("list_auditNumberList") + + self.list_auditNumberList = self._view:GetChild('list_auditNumberList') + + self.btn_close.onClick:Set(function() + self:Close() + end) + + self.list_auditNumberList.itemRenderer = function(index, obj) + AddItem(self, index, obj) + end end -function M:Show() +function FamilyAuditNumber:Reflash() + local group = DataManager.groups:get(self._group.id) + self.list_auditNumberList.numItems = #group.joinsData +end + +function FamilyAuditNumber:Show(group) + self._group = group local fgCtr = ControllerManager.GetController(NewGroupController) fgCtr:FG_GroupJoins(self._group.id, function(res) if res.ReturnCode ~= 0 then ViewUtil.ErrorTip(res.ReturnCode, "获取成员列表失败") return else - --self.data[self._group.id] = res.Data.joins - self.familyType.selectedIndex = 6 self:Reflash() end end) + + local mgr_ctr = ControllerManager.GetController(GroupMgrController) + mgr_ctr:AddEventListener(GroupMgrEvent.OnNewApply, handler(self, self.OnNewApply)) + + BaseView.Show(self) end -function M:ClickBtn(isAllow, uid) +function FamilyAuditNumber:Close() + local mgr_ctr = ControllerManager.GetController(GroupMgrController) + mgr_ctr:RemoveEventListener(GroupMgrEvent.OnNewApply, handler(self, self.OnNewApply)) + + BaseView.Close(self) +end + +function FamilyAuditNumber:ClickBtn(isAllow, uid) local fgCtr = ControllerManager.GetController(NewGroupController) fgCtr:FG_GroupVerifyJoin(self._group.id, uid, isAllow == 1, function(res) if res.ReturnCode ~= 0 then @@ -76,24 +96,11 @@ function M:ClickBtn(isAllow, uid) end) end -function M:OnNewApply(arg) +function FamilyAuditNumber:OnNewApply(arg) local group = DataManager.groups:get(self._group.id) - - --[[ - arg = arg[1] - - local msg = {} - msg.nick = arg.nick - msg.id = arg.uid - msg.portrait = arg.portrait - msg.tag = arg.remark - local groupInfo = self.data[self._group.id] - groupInfo[#groupInfo + 1] = msg - ]] - local list = self._view:GetChild('list_auditNumberList') local obj = list:AddItemFromPool() AddItem(self, #group.joinsData - 1, obj) end -return M +return FamilyAuditNumber diff --git a/lua_probject/base_project/Game/View/Family/FamilyEventView.lua b/lua_probject/base_project/Game/View/Family/FamilyEventView.lua index 55c1209d..a7390d6e 100644 --- a/lua_probject/base_project/Game/View/Family/FamilyEventView.lua +++ b/lua_probject/base_project/Game/View/Family/FamilyEventView.lua @@ -23,7 +23,7 @@ function FamilyEventView.new(root) mgr_ctr:AddEventListener(GroupMgrEvent.InviteResponse, handler(self, self._evtInviteResponse)) mgr_ctr:AddEventListener(GroupMgrEvent.IsOpenChatRoom, handler(self, self._evtIsOpenChatRoom)) mgr_ctr:AddEventListener(GroupMgrEvent.ChatRoomData, handler(self, self._evtChatRoomData)) - mgr_ctr:AddEventListener(GroupMgrEvent.OnNewApply, handler(self, self._evtOnNewApply)) + --mgr_ctr:AddEventListener(GroupMgrEvent.OnNewApply, handler(self, self._evtOnNewApply)) mgr_ctr:AddEventListener(GroupMgrEvent.OnNewRecord, handler(self, self._evtOnNewRecord)) mgr_ctr:AddEventListener(GroupMgrEvent.Onpush_assistant, handler(self, self._evtOnPush_assistant)) mgr_ctr:AddEventListener(GroupMgrEvent.OnMemberState, handler(self, self._evtOnMemberState)) @@ -49,7 +49,7 @@ function M:RemoveAll() mgr_ctr:RemoveEventListener(GroupMgrEvent.InviteResponse, handler(self, self._evtInviteResponse)) mgr_ctr:RemoveEventListener(GroupMgrEvent.IsOpenChatRoom, handler(self, self._evtIsOpenChatRoom)) mgr_ctr:RemoveEventListener(GroupMgrEvent.ChatRoomData, handler(self, self._evtChatRoomData)) - mgr_ctr:RemoveEventListener(GroupMgrEvent.OnNewApply, handler(self, self._evtOnNewApply)) + --mgr_ctr:RemoveEventListener(GroupMgrEvent.OnNewApply, handler(self, self._evtOnNewApply)) mgr_ctr:RemoveEventListener(GroupMgrEvent.OnNewRecord, handler(self, self._evtOnNewRecord)) mgr_ctr:RemoveEventListener(GroupMgrEvent.Onpush_assistant, handler(self, self._evtOnPush_assistant)) mgr_ctr:RemoveEventListener(GroupMgrEvent.OnMemberState, handler(self, self._evtOnMemberState)) @@ -139,6 +139,7 @@ function M:_evtNewMailTip(...) print("family event _evtNewMailTip") end +--[[ function M:_evtOnNewApply(...) print("_evtOnNewApply") local arg = { ... } @@ -151,6 +152,7 @@ function M:_evtOnNewApply(...) view:ChangeOther() self._child_familyAuditNumber:OnNewApply(arg) end +]] function M:_evtInviteResponse(...) local arg = { ... } @@ -310,7 +312,11 @@ function M:_evtOnFamilyReflash(...) end view:ChangeOther() - view._child_familyAuditNumber:Reflash() + + local win = BaseWindow.FindWindow("FamilyAuditNumber") + if win then + win:Reflash() + end end end diff --git a/lua_probject/base_project/Game/View/FamilyView.lua b/lua_probject/base_project/Game/View/FamilyView.lua index 10da066f..e6e35134 100644 --- a/lua_probject/base_project/Game/View/FamilyView.lua +++ b/lua_probject/base_project/Game/View/FamilyView.lua @@ -93,7 +93,7 @@ function M:init(url) local view = self._view self.lastTime = os.time() - self._child_familyAuditNumber = FamilyAuditNumber.new(self) + --self._child_familyAuditNumber = FamilyAuditNumber.new(self) self.com_FamilyChatRoom = FamilyChatRoom:Init(view:GetChild('com_chatRoom'), self) local fgCtr = ControllerManager.GetController(NewGroupController) @@ -316,8 +316,10 @@ function M:AllNumber() end function M:AuditNumber() - self.lastType = 1 - self._child_familyAuditNumber:Show() + local view = FamilyAuditNumber.new(self) + view:Show(self._group) + --self.lastType = 1 + --self._child_familyAuditNumber:Show() --self._child_familyAuditNumber = FamilyAuditNumber.new(self) end diff --git a/wb_new_ui/assets/Family/Main.xml b/wb_new_ui/assets/Family/Main.xml index af9c6ca7..c9d1b249 100644 --- a/wb_new_ui/assets/Family/Main.xml +++ b/wb_new_ui/assets/Family/Main.xml @@ -1,6 +1,6 @@ - + @@ -176,28 +176,6 @@ - - - - - - - - - - - - - - - - - - - - - - diff --git a/wb_new_ui/assets/Family/package.xml b/wb_new_ui/assets/Family/package.xml index 1774005e..53a1e115 100644 --- a/wb_new_ui/assets/Family/package.xml +++ b/wb_new_ui/assets/Family/package.xml @@ -392,6 +392,7 @@ + \ No newline at end of file diff --git a/wb_unity_pro/Assets/ART/base/Family/ui/Family_fui.bytes b/wb_unity_pro/Assets/ART/base/Family/ui/Family_fui.bytes index 691c992f..d561d35c 100644 Binary files a/wb_unity_pro/Assets/ART/base/Family/ui/Family_fui.bytes and b/wb_unity_pro/Assets/ART/base/Family/ui/Family_fui.bytes differ