hengyang_client/lua_probject/base_project/Game/View/Family/FamilySelectNumber.lua

79 lines
2.1 KiB
Lua

local FamilySelectNumber = {}
local function search(self)
local t = self.input_search.text
local re = {}
for _, player in pairs(self.group.members) do
if string.match(player.nick, t) then
re[#re + 1] = player
end
end
self.players = re
end
function FamilySelectNumber.New()
setmetatable(FamilySelectNumber, { __index = BaseWindow})
local inst = setmetatable({}, { __index = FamilySelectNumber})
--inst._full = true
inst._scale = 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:Refalsh()
self.list_number.numItems = #self.players
--self.list_number.numItems = #self.group.members
end
function FamilySelectNumber:Show(groupId, callback)
self.group = DataManager.groups.groupMap[groupId]
self.players = self.group.members
self.callback = callback
self:Refalsh()
BaseWindow.Show(self)
end
function FamilySelectNumber:Init()
self.input_search = self._view:GetChild("input_search")
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()
search(self)
self:Refalsh()
end)
self.btn_close.onClick:Set(function()
self:Close()
end)
self.list_number.itemRenderer = function(index, obj)
local i = index + 1
local player = self.players[i] --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