• Unity热更新05-XLua实战-02


    --一个面板对应一个表
    BagPanel = {}
    --"成员变量"
    --面板对象
    BagPanel.panelObj = nil
    --各个控件
    BagPanel.btnClose = nil
    BagPanel.togEquip = nil
    BagPanel.togItem = nil
    BagPanel.togGem = nil
    BagPanel.svBag = nil
    BagPanel.Content = nil
    
    --"成员方法"
    --初始化方法
    function BagPanel:Init()
    
        if self.panelObj == nil then
             --实例化面板对象
            self.panelObj = ABMgr:LoadRes("ui", "BagPanel", typeof(GameObject))
            self.panelObj.transform:SetParent(Canvas, false)
            --找控件
            --关闭按钮
            self.btnClose = self.panelObj.transform:Find("btnClose"):GetComponent(typeof(Button))
            --找3个toggle
            local group = self.panelObj.transform:Find("Group")
            self.togEquip = group:Find("togEquip"):GetComponent(typeof(Toggle))
            self.togItem = group:Find("togItem"):GetComponent(typeof(Toggle))
            self.togGem = group:Find("togGem"):GetComponent(typeof(Toggle))
            --sv相关
            self.svBag = self.panelObj.transform:Find("svBag"):GetComponent(typeof(ScrollRect))
            self.Content = self.svBag.transform:Find("Viewport"):Find("Content")
            --加事件
            --关闭按钮
            self.btnClose.onClick:AddListener(function()
                self:HideMe()
            end)
            --单选框事件
            --切页签
            --toggle 对应委托 是 UnityAction<bool>
            self.togEquip.onValueChanged:AddListener(function(value)
                if value == true then
                    self:ChangeType(1)
                end
            end)
            self.togItem.onValueChanged:AddListener(function(value)
                if value == true then
                    self:ChangeType(2)
                end
            end)
            self.togGem.onValueChanged:AddListener(function(value)
                if value == true then
                    self:ChangeType(3)
                end
            end)
        end
       
    end
    --显示隐藏
    function BagPanel:ShowMe()
        self:Init()
        self.panelObj:SetActive(true)
    end
    function BagPanel:HideMe()
        self.panelObj:SetActive(false)
    end
    
    --逻辑处理函数 用来切页签的
    --type 1装备 2道具 3宝石
    function BagPanel:ChangeType(type)
        
    end
    
  • 相关阅读:
    grid 布局
    mongoose
    Nestjs 上传文件
    Nestjs 设置静态文件,public
    Centos 为Nginx 搭建https
    react组件
    namecheap 添加二级域名
    electron+react
    遍历文件,读取.wxss文件,在头部添加一条注释
    react 中的绑定事件
  • 原文地址:https://www.cnblogs.com/unitysir/p/13896842.html
Copyright © 2020-2023  润新知