| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111 |
- local UIHundredDojoSloganView = require("UIHundredDojo/UIHundredDojoSloganView_Generate")
- function UIHundredDojoSloganView:OnAwake(data)
- self.controller = require("UIHundredDojo/UIHundredDojoSloganCtr"):new()
- self.controller:Init(self)
- self.controller:SetData(data)
- end
- function UIHundredDojoSloganView:AddEventListener()
- ManagerContainer.LuaEventMgr:RegisterUIEvent(self.uiData.name, UIEventNames.HUNDRED_DOJO_SLOGAN_CHANGED, self, self.OnSloganChanged)
- end
- function UIHundredDojoSloganView:FillContent(data, uiBase)
- self.uiBase = uiBase
- local gameObject = self.uiBase:GetRoot()
- if gameObject ~= nil then
- self.gameObject = gameObject
- self.transform = gameObject.transform
- end
- self:InitGenerate(self.transform, data)
- self:Init()
- end
- function UIHundredDojoSloganView:Init()
- self.controller:InitData()
- local changeSlogan = self.controller:GetChangeSlogan()
- self.inputField.inputField.text = changeSlogan
- self:OnValueChangedInput(changeSlogan)
- end
- function UIHundredDojoSloganView:RemoveEventListener()
- ManagerContainer.LuaEventMgr:Unregister(self.uiData.name)
- self.inputField.inputField.onValidateInput = nil
- self.inputField.inputField.onValueChanged:RemoveAllListeners()
- self.inputField.inputField.onEndEdit:RemoveAllListeners()
- end
- function UIHundredDojoSloganView:AddUIEventListener()
- self.uiBase:AddButtonUniqueEventListener(self.AnyBtn.button, self, self.OnClickCloseBtn)
- self.uiBase:AddButtonUniqueEventListener(self.btnClose.button, self, self.OnClickCloseBtn)
- self.uiBase:AddButtonUniqueEventListener(self.btnConfirm.button, self, self.OnClickConfirmBtn)
- self.inputField.inputField.onValidateInput = self.inputField.inputField.OnValidateInput(self.OnValidateInput, self)
- self.inputField.inputField.onValueChanged:RemoveAllListeners()
- self.inputField.inputField.onValueChanged:AddListener(function(text)
- self:OnValueChangedInput(text)
- end)
- self.inputField.inputField.onEndEdit:RemoveAllListeners()
- self.inputField.inputField.onEndEdit:AddListener(function(text)
- self:OnEndEditInput(text)
- end)
- end
- function UIHundredDojoSloganView:OnHide()
- end
- function UIHundredDojoSloganView:OnShow(data)
- self.controller:SetData(data)
- end
- function UIHundredDojoSloganView:OnClose()
- end
- function UIHundredDojoSloganView:OnDispose()
- self.controller:OnDispose()
- end
- function UIHundredDojoSloganView:OnSloganChanged()
- local inputField = self.inputField.inputField
- if not inputField.isFocused then
- local curSlogan = self.controller:GetCurSlogan()
- if inputField.text == curSlogan then
- inputField.text = curSlogan
- end
- end
- end
- function UIHundredDojoSloganView:OnClickCloseBtn()
- self:UIClose()
- end
- function UIHundredDojoSloganView:OnClickConfirmBtn()
- local errorCode = self.controller:SendChangeSlogan()
- if errorCode ~= 0 and errorCode ~= 1 then
- ManagerContainer.LuaUIMgr:ErrorNoticeDisplay(errorCode)
- end
- self:UIClose()
- end
- function UIHundredDojoSloganView:OnValidateInput(text, charIndex, addedChar)
- local len = GetActualStringLength(text) + 1
- local max = self.controller:GetSloganLengthMax()
- if len > max then return 0 end
- return addedChar
- end
- function UIHundredDojoSloganView:OnValueChangedInput(text)
- local len = GetActualStringLength(text)
- local max = self.controller:GetSloganLengthMax()
- self.text.text.text = tostring(len) .. '/' .. tostring(max)
- end
- function UIHundredDojoSloganView:OnEndEditInput(text)
- self.controller:SetChangeSlogan(text)
- end
- return UIHundredDojoSloganView
|