72 lines
1.9 KiB
Lua
72 lines
1.9 KiB
Lua
local FamilyManagerTable = import(".FamilyManagerTable")
|
|
|
|
local FamilyManagerView = {}
|
|
|
|
local M = FamilyManagerView
|
|
|
|
function FamilyManagerView.new(data,callback)
|
|
setmetatable(M, { __index = BaseWindow })
|
|
local self = setmetatable({}, { __index = M })
|
|
self.class = "FamilyManagerView"
|
|
self._data = data or {}
|
|
self._callback = callback
|
|
self._close_destroy = true
|
|
self._full = true
|
|
self._full_offset = false
|
|
self:init("ui://Family/FamilyManager")
|
|
return self
|
|
end
|
|
|
|
function M:init(url)
|
|
getmetatable(M).__index.init(self,url)
|
|
|
|
local view = self._view
|
|
self._viewList_left = view:GetChild('list_left')
|
|
self._viewList_left.itemRenderer = handler(self,self.ManagerItemRenderer)
|
|
self._viewList_left.onClickItem:Set(handler(self,self.ManagerClick))
|
|
|
|
self:FillData()
|
|
end
|
|
|
|
--管理页面函数组--
|
|
function M:ManagerItemRenderer(index,obj)
|
|
local viewInfo = FamilyManagerTable.ManagerTable[FamilyManagerTable.ManagerShow[self._data.lev][index+1]]
|
|
obj.title = viewInfo.title
|
|
obj.icon = viewInfo.icon
|
|
end
|
|
|
|
function M:ManagerClick(context)
|
|
local viewInfo = FamilyManagerTable.ManagerTable[FamilyManagerTable.ManagerShow[self._data.lev][self._viewList_left.selectedIndex+1]]
|
|
viewInfo.view.new({root=self})
|
|
end
|
|
-----------------
|
|
|
|
function M:FillData()
|
|
local lev = self._data.lev or 1
|
|
self._data.lev = lev
|
|
self._viewList_left.numItems = #FamilyManagerTable.ManagerShow[lev]
|
|
|
|
local frsitIndex = self._data.frsitIndex or 1
|
|
local viewInfo = FamilyManagerTable.ManagerTable[FamilyManagerTable.ManagerShow[lev][frsitIndex]]
|
|
viewInfo.view.new({root=self})
|
|
self._viewList_left.selectedIndex = frsitIndex - 1
|
|
self:Show()
|
|
end
|
|
|
|
-- 打开窗口
|
|
function M:Show()
|
|
getmetatable(M).__index.Show(self)
|
|
end
|
|
|
|
-- 关闭窗口
|
|
function M:Close()
|
|
getmetatable(M).__index.Close(self)
|
|
end
|
|
|
|
-- 销毁窗口
|
|
function M:Destroy()
|
|
getmetatable(M).__index.Destroy(self)
|
|
end
|
|
|
|
return M
|