|
|
- --[[
- 列表的标题栏
- --]]
-
- UIListTitle = UIListTitle or BaseClass()
-
- function UIListTitle:__init(parent_wnd, bheight, del_x)
- -- 标题栏高度
- self.height = bheight or 45
- self.del_x=del_x or 1
- self.root_wnd = parent_wnd
- self.bgList = {}
- self.labelList = {}
- self.root_size = parent_wnd.transform.sizeDelta
-
- local bg = UiFactory.createChild(self.root_wnd,UIType.Image,"bg")
- lua_resM:setImageSprite(self,bg:GetComponent("Image"),"common_asset", "tyui_syq_bg")
- -- bg.transform.localPosition = Vector3(0, 0, 0)
- bg.transform.sizeDelta = Vector2(self.root_size.x, self.height)
- bg.transform.anchorMax = Vector2(0, 1)
- bg.transform.anchorMin = Vector2(0, 1)
- bg:GetComponent("Image").type = UnityEngine.UI.Image.Type.Sliced
- bg.transform.pivot = Vector2(0,1)
- bg.transform.localPosition = Vector3(0, 0, 0)
- end
-
- -- 设置标题栏{{"名字",宽度},{"名字",宽度}...}
- function UIListTitle:SetData(data)
- self.data = data or {}
-
- self:ClearItems()
- local px = 0
- local len = #self.data
- for i=1,len do
- local d = self.data[i]
- local title = d[1] or ""
- local width = d[2] or 40
- local font_size = d[3] or 20
- if i~=len then
- local bg = self:CreateBg(px,width)
- self.bgList[i] = bg
- end
-
- local label = self:CreateLabel(title,px,width, font_size)
- self.labelList[i] = label
- px = px + width
- end
- end
-
- function UIListTitle:ClearItems()
- for k,v in pairs(self.bgList) do
- lua_viewM:ClearItem(v)
- end
- self.bgList={}
-
- for k,v in pairs(self.labelList) do
- lua_viewM:ClearItem(v)
- end
- self.labelList={}
- end
-
- function UIListTitle:CreateLabel(str,px,width, font_size)
- local label = UiFactory.createChild(self.root_wnd,UIType.Label2,"label")
- -- label.transform.localPosition = Vector3(px, 0, 0)
- label.transform.localPosition = Vector3(px, 0, 0)
- label.transform.sizeDelta = Vector2(width, self.height or 45)
- label:GetComponent("Text").alignment = UnityEngine.TextAnchor.MiddleCenter
- label:GetComponent("Text").text = str
- label:GetComponent("Text").color = ColorUtilValue.WHITE
- label:GetComponent("Text").fontSize = font_size
- label.transform.anchorMax = Vector2(0, 1)
- label.transform.anchorMin = Vector2(0, 1)
- label.transform.pivot = Vector2(0,1)
- label.transform.localPosition = Vector3(px, 0, 0)
- return label
- end
-
- function UIListTitle:CreateBg(px,width)
- local bg = UiFactory.createChild(self.root_wnd,UIType.Image,"bg")
- lua_resM:setImageSprite(self,bg:GetComponent("Image"),"common_asset", "tyui_syq_gt")
- -- bg.transform.localPosition = Vector3(px+width, 0, 0)
- bg.transform.localPosition = Vector3(px+width, 0, 0)
- bg.transform.sizeDelta = Vector2(1, self.height or 45)
- bg.transform.anchorMax = Vector2(0, 1)
- bg.transform.anchorMin = Vector2(0, 1)
- bg.transform.pivot = Vector2(0,1)
- bg.transform.localPosition = Vector3(px+width, 0, 0)
- return bg
- end
-
- --传入颜色id
- function UIListTitle:SetLabelColor( color_id )
- for _,v in pairs(self.labelList) do
- v:GetComponent("Text").color = ColorUtil:GetGoodsColor(color_id)
- end
- end
|