75 lines
2.2 KiB
Lua
75 lines
2.2 KiB
Lua
local FamilyManagerTable = import(".FamilyManagerTable")
|
|
|
|
local FamilyManagerView = {}
|
|
|
|
local M = FamilyManagerView
|
|
|
|
local MangerURL = {"ui://Family/FamilyManager"}
|
|
|
|
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()
|
|
return self
|
|
end
|
|
|
|
function M:init()
|
|
self._data.pageType = self._data.pageType or 1
|
|
getmetatable(M).__index.init(self,FamilyManagerTable.ManagerManger[self._data.pageType].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.ManagerManger[self._data.pageType].table[self._data.lev][index+1]]
|
|
obj:GetChild('text_down').text = viewInfo.title
|
|
obj:GetChild('text_up').text = viewInfo.title
|
|
end
|
|
|
|
function M:ManagerClick(context)
|
|
local viewInfo = FamilyManagerTable.ManagerTable[FamilyManagerTable.ManagerManger[self._data.pageType].table[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.ManagerManger[self._data.pageType].table[lev]
|
|
|
|
local frsitIndex = self._data.frsitIndex or 1
|
|
local viewInfo = FamilyManagerTable.ManagerTable[FamilyManagerTable.ManagerManger[self._data.pageType].table[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
|