|
|
- DropDownItem = DropDownItem or BaseClass(BaseItem)
-
- DropDownItem.HEIGHT = 52
-
- function DropDownItem:__init(parent_wnd)
- self.base_file = "uiComponent"
- self.layout_file = "DropDownItem"
-
- self:Load()
- end
-
- function DropDownItem:__delete()
-
- end
-
- function DropDownItem:Load_callback()
- self.name_text = self:GetChild("name"):GetComponent("Text")
- self.redDot = self:GetChild("redDot").gameObject
- self.select_img = self.transform:GetComponent("Image")
- self:InitEvent()
-
- if self.need_refresh then
- self:SetData(self.name, self.set_func, self.call_back)
- self:ShowRedDot(self.show_redDot)
- end
- if self.need_refreshSelect then
- self:SelectStatus(self.is_select)
- end
- end
-
- function DropDownItem:InitEvent()
- local function click_func(target)
- if self.set_func then
- self.set_func(self.name)
- end
- if self.call_back then
- self.call_back(self.name)
- end
- end
- AddClickEvent(self.gameObject, click_func)
- end
-
- function DropDownItem:SetData(name, set_func, call_back)
- self.name = name
- self.set_func = set_func
- self.call_back = call_back
-
- if self.is_loaded then
- self.name_text.text = self.name
- else
- self.need_refresh = true
- end
- end
-
- function DropDownItem:SetSelected()
- if self.set_func then
- self.set_func(self.name)
- end
- if self.call_back and self.name then
- self.call_back(self.name)
- end
- end
-
- function DropDownItem:ShowRedDot(value)
- self.show_redDot = value or false
- if self.is_loaded then
- self.redDot:SetActive(self.show_redDot)
- else
- self.need_refresh = true
- end
- end
-
- function DropDownItem:SelectStatus(bool)
- self.is_select = bool
- if self.is_loaded then
- lua_resM:setImageSprite(self, self.select_img, "common_asset", bool and "tips_btn_on" or "tips_btn_off")
- else
- self.need_refreshSelect = true
- end
- end
|