137 lines
3.8 KiB
Lua
137 lines
3.8 KiB
Lua
---@type IDBasePanel
|
||
local TRBasePanel = require("ui.panel.TRBasePanel")
|
||
---@class TRPAbout:TRBasePanel 邮件列表
|
||
local TRPAbout = class("TRPAbout", TRBasePanel)
|
||
|
||
local uiobjs = {}
|
||
-- 初始化,只会调用一次
|
||
function TRPAbout:init(csObj)
|
||
TRPAbout.super.init(self, csObj)
|
||
self:initFiledsAttr()
|
||
self:setEventDelegate()
|
||
|
||
MyUtl.setContentView(getChild(self.transform, "PanelContent"), 132 + 500, 0)
|
||
---@type UIScrollView
|
||
uiobjs.scrollView = getCC(self.transform, "PanelContent", "UIScrollView")
|
||
---@type UITable
|
||
uiobjs.Table = getCC(uiobjs.scrollView.transform, "Table", "UITable")
|
||
---@type CLUIFormRoot
|
||
uiobjs.TableForm = uiobjs.Table:GetComponent("CLUIFormRoot")
|
||
---@type Coolape.CLCellLua
|
||
uiobjs.TableLua = uiobjs.Table:GetComponent("CLCellLua")
|
||
end
|
||
|
||
function TRPAbout:initFiledsAttr()
|
||
---@type _ParamFieldAttr
|
||
local attr
|
||
self.baseFiledsAttr = {}
|
||
attr = {}
|
||
attr.attrName = "更新动态"
|
||
attr.id = "upgrade"
|
||
attr.attrType = DBCust.FieldType.text
|
||
attr.ifMust = 0
|
||
attr.donotJoinKey = true
|
||
table.insert(self.baseFiledsAttr, attr)
|
||
|
||
attr = {}
|
||
attr.attrName = "服务协议"
|
||
attr.id = "serviceAgreement"
|
||
attr.attrType = DBCust.FieldType.text
|
||
attr.ifMust = 0
|
||
attr.donotJoinKey = true
|
||
table.insert(self.baseFiledsAttr, attr)
|
||
|
||
attr = {}
|
||
attr.attrName = "发布评价"
|
||
attr.id = "assess"
|
||
attr.attrType = DBCust.FieldType.text
|
||
attr.ifMust = 0
|
||
attr.donotJoinKey = true
|
||
table.insert(self.baseFiledsAttr, attr)
|
||
end
|
||
|
||
-- 设置数据
|
||
---@param paras _ParamTRPAbout
|
||
function TRPAbout:setData(paras)
|
||
self.mdata = {}
|
||
end
|
||
|
||
-- 显示,在c#中。show为调用refresh,show和refresh的区别在于,当页面已经显示了的情况,当页面再次出现在最上层时,只会调用refresh
|
||
function TRPAbout:show()
|
||
---@type _ParamCellExtendFiledRoot
|
||
local fieldRootInfor = {}
|
||
fieldRootInfor.fields = {}
|
||
fieldRootInfor.data = self.mdata
|
||
fieldRootInfor.onFinish = self:wrapFunc(self.reposition)
|
||
for i, v in ipairs(self.baseFiledsAttr) do
|
||
---@type _ParamCellExtendFiled
|
||
local d = {}
|
||
d.attr = v
|
||
d.showMode = _FieldMode.button
|
||
d.onClick = self:wrapFunc(self.onClickField)
|
||
d.onSelect = self:wrapFunc(self.onSelectField)
|
||
table.insert(fieldRootInfor.fields, d)
|
||
end
|
||
|
||
uiobjs.TableLua:init(fieldRootInfor, nil)
|
||
end
|
||
|
||
---@param el CLUIElement
|
||
function TRPAbout:onClickField(el)
|
||
if el.jsonKey == "upgrade" then
|
||
-- 更新
|
||
elseif el.jsonKey == "serviceAgreement" then
|
||
-- 显示协议
|
||
elseif el.jsonKey == "assess" then
|
||
-- 评价(这个做起来麻烦)
|
||
end
|
||
end
|
||
|
||
function TRPAbout:onSelectField(go)
|
||
end
|
||
|
||
function TRPAbout:reposition()
|
||
uiobjs.Table:Reposition()
|
||
uiobjs.Table.repositionNow = true
|
||
uiobjs.scrollView:ResetPosition()
|
||
end
|
||
|
||
-- 刷新
|
||
function TRPAbout:refresh()
|
||
uiobjs.TableLua.luaTable.release()
|
||
end
|
||
|
||
-- 关闭页面
|
||
function TRPAbout:hide()
|
||
uiobjs.TableLua.luaTable.release()
|
||
end
|
||
|
||
-- 网络请求的回调;cmd:指命,succ:成功失败,msg:消息;paras:服务器下行数据
|
||
function TRPAbout:procNetwork(cmd, succ, msg, paras)
|
||
if (succ == NetSuccess) then
|
||
--[[
|
||
if cmd == xx then
|
||
end
|
||
]]
|
||
end
|
||
end
|
||
|
||
function TRPAbout:setEventDelegate()
|
||
self.EventDelegate = {}
|
||
end
|
||
|
||
-- 处理ui上的事件,例如点击等
|
||
function TRPAbout:uiEventDelegate(go)
|
||
local func = self.EventDelegate[go.name]
|
||
if func then
|
||
func(go)
|
||
end
|
||
end
|
||
|
||
-- 当顶层页面发生变化时回调
|
||
function TRPAbout:onTopPanelChange(topPanel)
|
||
end
|
||
|
||
--------------------------------------------
|
||
return TRPAbout
|