跳转至

界面跳转

统一跳转界面开启判断

策划配置界面跳转

配置界面显示货币栏

原有

显示

UIManager.Show(NM.md.map)

跳转

UIManager.Show(NM.md.fuBen,{tabType = "FuBenDanRen", subParams = {tabType = "RuneTower"}})

界面跳转处理

-- 页签
local tabbarConfig = {
    --单人副本
    [1] = {
        tabType = "FuBenDanRen",
    },
    --多人副本
    [2] = {
        tabType = "FuBenMulti",
    }
}

function P:OnShowFinished(params)
    local tabType = params and params.tabType or "FuBenDanRen"
    local tabbarPanel = self:GetChildPanel("tabbar")
    tabbarPanel:ShowTab(tabType, params.subParams, true)
    -- 也支持传入页面的索引
    -- tabbarPanel:ShowTab(1, params.subParams, true)
end

新增

新增管理器 UINavigationController.lua

配置 SystemOpenConfigs.lua -- 客户端维护

image-20220902112258384

t_ui_config.lua -- 客户端维护,策划参考

image-20220902112815713

跳转

EventManager.Fire(NM.ui.jumpUI, { panelName = NM.Panel.SingleRuneTower})
EventManager.Fire(NM.ui.jumpUI, { panelName = "SingleExperience" })
EventManager.Fire(NM.ui.jumpUI, { uiCfgId = t_ui_config.id }
-- 带参数模式
EventManager.Fire(NM.ui.jumpUI, { 
    panelName = NM.Panel.SingleRuneTower,
    params = {},
})

界面跳转处理

-- 页签
local tabbarConfig = {
    -- 单人副本
    [1] = {
        tabType = NM.Panel.FuBenDanRen,
    },
    -- 多人副本
    [2] = {
        tabType = NM.Panel.FuBenMulti,
    }
}

function P:OnShowFinished(params)
    local tabType = params and params.tabType or NM.Panel.FuBenDanRen
    local tabbarPanel = self:GetChildPanel("tabbar")
    tabbarPanel:ShowTab(tabType, params.subParams, true)
end

配置说明

SystemOpenConfigs.lua

描述界面结构

注意

  1. 功能名字唯一
  2. module 小写,panel 大写
  3. openKey 用于判断功能开启

​ 自定义 openKey ​ t_mg_open 的 openKey

t_ui_config 数据库表

策划参考表,客户端维护

注意

  1. id 唯一,可以不连续
  2. 设置好的 id 就不能再改,否则策划配置的表要同步修改

一些已经使用上 t_get_way tip 上显示的获取途径

image-20220902113035897

t_item.usageUiId 物品点击使用跳转到界面

其他

内部使用都用 NM.Panel NM.md 指明界面,即使某些接口提供传字符串的方式