local FamilySelectNumber = {} function FamilySelectNumber.New() setmetatable(FamilySelectNumber, { __index = BaseWindow}) local inst = setmetatable({}, { __index = FamilySelectNumber}) inst._full = true inst._close_destroy = true inst._full_offset = false inst._anim_pop = 0 inst._animation = false BaseWindow.init(inst, "ui://Family/com_SelectNumber") inst:Init() return inst end function FamilySelectNumber:Show(groupId, callback) self.group = DataManager.groups.groupMap[groupId] self.callback = callback self.list_number.numItems = #self.group.members BaseWindow.Show(self) end function FamilySelectNumber:Init() self.list_number = self._view:GetChild("list_number") self.btn_search = self._view:GetChild("btn_search") self.btn_close = self._view:GetChild("btn_close") self.btn_search.onClick:Set(function() end) self.btn_close.onClick:Set(function() self:Close() end) self.list_number.itemRenderer = function(index, obj) local i = index + 1 local player = self.group.members[i] obj:GetController('lev').selectedIndex = player.lev - 1 obj:GetController('ban').selectedIndex = player.ban obj:GetChild('name').text = player.nick obj:GetChild('id').text = string.format("ID:%s", player.uid) obj.onClick:Set(function() if self.callback then self.callback(player) end self.callback = nil self:Close() end) end end return FamilySelectNumber