136 lines
No EOL
4.2 KiB
Lua
136 lines
No EOL
4.2 KiB
Lua
XUiPanelJubao = XClass(nil, "XUiPanelJubao")
|
|
|
|
function XUiPanelJubao:Ctor(ui, parent)
|
|
self.GameObject = ui.gameObject
|
|
self.Transform = ui.transform
|
|
self.Parent = parent
|
|
self:InitAutoScript()
|
|
end
|
|
|
|
-- auto
|
|
-- Automatic generation of code, forbid to edit
|
|
function XUiPanelJubao:InitAutoScript()
|
|
self:AutoInitUi()
|
|
self.SpecialSoundMap = {}
|
|
self:AutoAddListener()
|
|
end
|
|
|
|
function XUiPanelJubao:AutoInitUi()
|
|
self.BtnBack = self.Transform:Find("BtnBack"):GetComponent("Button")
|
|
self.BtnConfirm = self.Transform:Find("BtnConfirm"):GetComponent("Button")
|
|
self.PanelRole = self.Transform:Find("PanelRole")
|
|
self.RImgRole = self.Transform:Find("PanelRole/RImgRole"):GetComponent("RawImage")
|
|
self.PanelTGroup = self.Transform:Find("PanelTGroup")
|
|
self.TogQt = self.Transform:Find("PanelTGroup/TogQt"):GetComponent("Toggle")
|
|
self.TogDs = self.Transform:Find("PanelTGroup/TogDs"):GetComponent("Toggle")
|
|
self.TogZp = self.Transform:Find("PanelTGroup/TogZp"):GetComponent("Toggle")
|
|
self.TogGg = self.Transform:Find("PanelTGroup/TogGg"):GetComponent("Toggle")
|
|
self.PanelInput = self.Transform:Find("PanelInput")
|
|
self.TxtNum = self.Transform:Find("PanelInput/TxtNum"):GetComponent("Text")
|
|
self.InFReason = self.Transform:Find("PanelInput/InFReason"):GetComponent("InputField")
|
|
self.TxtName = self.Transform:Find("TxtName"):GetComponent("Text")
|
|
end
|
|
|
|
function XUiPanelJubao:GetAutoKey(uiNode, eventName)
|
|
if not uiNode then
|
|
return
|
|
end
|
|
return eventName .. uiNode:GetHashCode()
|
|
end
|
|
|
|
function XUiPanelJubao:RegisterListener(uiNode, eventName, func)
|
|
local key = self:GetAutoKey(uiNode, eventName)
|
|
if not key then
|
|
return
|
|
end
|
|
local listener = self.AutoCreateListeners[key]
|
|
if listener ~= nil then
|
|
uiNode[eventName]:RemoveListener(listener)
|
|
end
|
|
|
|
if func ~= nil then
|
|
if type(func) ~= "function" then
|
|
XLog.Error("XUiPanelJubao:RegisterListener函数错误, 参数func需要是function类型, func的类型是" .. type(func))
|
|
end
|
|
|
|
listener = function(...)
|
|
XSoundManager.PlayBtnMusic(self.SpecialSoundMap[key], eventName)
|
|
func(self, ...)
|
|
end
|
|
|
|
uiNode[eventName]:AddListener(listener)
|
|
self.AutoCreateListeners[key] = listener
|
|
end
|
|
end
|
|
|
|
function XUiPanelJubao:AutoAddListener()
|
|
self.AutoCreateListeners = {}
|
|
XUiHelper.RegisterClickEvent(self, self.BtnBack, self.OnBtnBackClick)
|
|
XUiHelper.RegisterClickEvent(self, self.BtnConfirm, self.OnBtnConfirmClick)
|
|
self:RegisterListener(self.TogQt, "onValueChanged", self.OnTogQtValueChanged)
|
|
self:RegisterListener(self.TogDs, "onValueChanged", self.OnTogDsValueChanged)
|
|
self:RegisterListener(self.TogZp, "onValueChanged", self.OnTogZpValueChanged)
|
|
self:RegisterListener(self.TogGg, "onValueChanged", self.OnTogGgValueChanged)
|
|
self:RegisterListener(self.InFReason, "onValueChanged", self.OnInFReasonValueChanged)
|
|
self:RegisterListener(self.InFReason, "onEndEdit", self.OnInFReasonEndEdit)
|
|
end
|
|
-- auto
|
|
function XUiPanelJubao:OnTogQtValueChanged()
|
|
|
|
end
|
|
|
|
function XUiPanelJubao:OnTogDsValueChanged()
|
|
|
|
end
|
|
|
|
function XUiPanelJubao:OnTogZpValueChanged()
|
|
|
|
end
|
|
|
|
function XUiPanelJubao:OnTogGgValueChanged()
|
|
|
|
end
|
|
|
|
function XUiPanelJubao:OnInFReasonValueChanged()
|
|
local length = string.Utf8Len(self.InFReason.text)
|
|
self.TxtNum.text = length .. "/" .. "100"
|
|
end
|
|
|
|
function XUiPanelJubao:OnInFReasonEndEdit()
|
|
|
|
end
|
|
|
|
function XUiPanelJubao:OnBtnBackClick()
|
|
self:SetIsShow(false)
|
|
end
|
|
|
|
function XUiPanelJubao:OnBtnConfirmClick()
|
|
XUiManager.TipCode(XCode.Success)
|
|
self:SetIsShow(false)
|
|
end
|
|
|
|
function XUiPanelJubao:OnBtnInputFieldClick()
|
|
|
|
end
|
|
|
|
function XUiPanelJubao:SetIsShow(code)
|
|
self.GameObject.gameObject:SetActive(code)
|
|
end
|
|
|
|
function XUiPanelJubao:Refresh(playerData)
|
|
self.playerData = playerData
|
|
self.TogGg.isOn = false
|
|
self.TogZp.isOn = false
|
|
self.TogDs.isOn = false
|
|
self.TogQt.isOn = false
|
|
|
|
self.TxtName.text = playerData.Name
|
|
local info = XPlayerManager.GetHeadPortraitInfoById(playerData.CurrHeadPortraitId)
|
|
if (info ~= nil) then
|
|
self.RImgRole:SetRawImage(info.ImgSrc)
|
|
end
|
|
self:SetIsShow(true)
|
|
|
|
end
|
|
|
|
return XUiPanelJubao |