--[[ @describtion:控件红点图标 @author:hjp ]] UIRedDotIcon = UIRedDotIcon or BaseClass() --红点的类型 UIRedDotIcon.RedDotType = { red_dot = "com_red_point", --提示红点 red_dot_num = "com_red_point_2", --红点带数字 } function UIRedDotIcon:__init(parent_wnd, type, pos, size) self.root_wnd = parent_wnd self.gameObject = UiFactory.createChild(parent_wnd,UIType.Image,"RedDotIcon") self.transform = self.gameObject.transform self.image = self.gameObject:GetComponent("Image") self.type = type or UIRedDotIcon.RedDotType.red_dot self.size = size lua_resM:setImageSprite(self,self.image,"mainui_asset", self.type, size == nil, function() if self.size then self.transform.sizeDelta = Vector2(self.size.x, self.size.y) else self.size = Vector2(self.transform.sizeDelta.x, self.transform.sizeDelta.y) end end) if type == UIRedDotIcon.RedDotType.red_dot_num then local label = UiFactory.createChild(self.transform, UIType.Label2, "Number") label.transform.sizeDelta = Vector2(0,0) label.transform.anchoredPosition = Vector3(-2.5,0.45,0) self.lbNumber = label:GetComponent("Text") self.lbNumber.color = Color(1,1,1,1) end if pos then self:SetPosition(pos.x, pos.y) end end function UIRedDotIcon:SetNumber(number) if self.lbNumber then self.lbNumber.text = number self.lbNumber.transform.sizeDelta = Vector2(self.lbNumber.preferredWidth, self.lbNumber.preferredHeight) end end function UIRedDotIcon:SetSize( x,y ) self.size = Vector2(x,y) self.transform.sizeDelta = self.size end -- function UIRedDotIcon:SetRedDotRes( res ) -- if self.ib_red_dot then -- self.ib_red_dot:SetString(ImageBoxProperty.Source, "comp:xx_red_dot") -- end -- end function UIRedDotIcon:SetPosition( x, y ) self.transform.anchoredPosition = Vector3(x, y, 0) end function UIRedDotIcon:GetPosition() return self.transform.anchoredPosition end function UIRedDotIcon:SetVisible( flag ) flag = flag or false self.gameObject:SetActive(flag) end function UIRedDotIcon:IsVisible() return self.gameObject.activeSelf end