local UnitJoin = import(".UnitJoin") local UnitJoinNone = import(".UnitJoinNone") local UnitJoinTable = import(".UnitJoinTable") local UnitList = import(".UnitList") local UnitMain = import(".UnitMain") local LobbyUnit = { Main = 1, --主页 JoinUnit = 2, --搜索加入 JoinNone = 3, --没有加入状态 JoinTable = 4, --创建或加入牌桌 List = 5, --俱乐部列表 } local M = LobbyUnit function LobbyUnit.new(path, pref, transform) local self = setmetatable({}, { __index = M }) self.view = UIManager.GetGo(path .. pref, transform) self.path = path self:init(self.view.transform) return self end function M:init(view) self.subView = {} self.subView[LobbyUnit.Main] = UnitMain.new(self.path .. "lobby/Unit/unitMain.prefab", view) self.subView[LobbyUnit.JoinUnit] = UnitJoin.new(self.path .. "lobby/Unit/unitJoin.prefab", view) self.subView[LobbyUnit.JoinNone] = UnitJoinNone.new(self.path .. "lobby/Unit/unitJoinNone.prefab", view) self.subView[LobbyUnit.JoinTable] = UnitJoinTable.new(self.path .. "lobby/Unit/unitJoinTable.prefab", view) self.subView[LobbyUnit.List] = UnitList.new(self.path .. "lobby/Unit/unitList.prefab", view) for index, value in pairs(self.subView) do value.LobbyUnit = LobbyUnit value.CallBack = function(subOpen, subClose) self:SubViewControl(subOpen, subClose) end end local open = { [1] = LobbyUnit.Main } local close = { [1] = LobbyUnit.List, [2] = LobbyUnit.JoinNone, [3] = LobbyUnit.JoinTable, [4] = LobbyUnit.JoinUnit } self:SubViewControl(open, close) end function M:SubViewControl(subOpen, subClose) for index, value in pairs(subOpen) do self.subView[value].view.gameObject:SetActive(true) end for index, value in pairs(subClose) do self.subView[value].view.gameObject:SetActive(false) end end return M