63 lines
1.9 KiB
Lua
63 lines
1.9 KiB
Lua
local BaseTipsUI = class("BattleSkillTips", BaseUI)
|
|
|
|
function BaseTipsUI:isFullScreen()
|
|
return false
|
|
end
|
|
|
|
function BaseTipsUI:getType()
|
|
return UIManager.UI_TYPE.MULTI
|
|
end
|
|
|
|
---- params = {tipsCompPrefabPath = ?, tipsCompLuaPath = ?, tipsCompParams = ?}
|
|
function BaseTipsUI:ctor(params)
|
|
self.curTipsCompPrefabPath = params.tipsCompPrefabPath
|
|
self.curTipsCompLuaPath = params.tipsCompLuaPath
|
|
self.curTipsCompParams = params.tipsCompParams
|
|
end
|
|
|
|
function BaseTipsUI:getPrefabPath()
|
|
return "assets/prefabs/ui/tips/base_tips_ui.prefab"
|
|
end
|
|
|
|
function BaseTipsUI:onLoadRootComplete()
|
|
self:clearSubComps()
|
|
if not self.root.__tipsComps then
|
|
self.root.__tipsComps = {}
|
|
end
|
|
if self.root.__tipsComps[self.curTipsCompLuaPath] then
|
|
self.root.__tipsComps[self.curTipsCompLuaPath]:getBaseObject():setActive(true)
|
|
self.root.__tipsComps[self.curTipsCompLuaPath]:refresh(self.curTipsCompParams)
|
|
else
|
|
UIPrefabManager:loadUIWidgetAsync(self.curTipsCompPrefabPath, self.root, function(prefabObject)
|
|
if prefabObject:getAssetPath() ~= self.curTipsCompPrefabPath then
|
|
prefabObject:destroy()
|
|
return
|
|
end
|
|
|
|
prefabObject:initPrefabHelper()
|
|
prefabObject:genAllChildren()
|
|
self.root.__tipsComps[self.curTipsCompLuaPath] = prefabObject:addLuaComponent(self.curTipsCompLuaPath)
|
|
self.root.__tipsComps[self.curTipsCompLuaPath]:refresh(self.curTipsCompParams)
|
|
end)
|
|
end
|
|
|
|
self.root:addClickListener(function()
|
|
self:closeUI()
|
|
end)
|
|
end
|
|
|
|
function BaseTipsUI:clearSubComps()
|
|
if not self.root.__tipsComps then
|
|
return
|
|
end
|
|
for path, comp in pairs(self.root.__tipsComps) do
|
|
comp:onUIClose()
|
|
comp:getBaseObject():setActive(false)
|
|
end
|
|
end
|
|
|
|
function BaseTipsUI:onClose()
|
|
self:clearSubComps()
|
|
end
|
|
|
|
return BaseTipsUI |