|
|
- -- <*
- -- @Author: Saber
- -- @Description: 圣物系统奖励预览界面子节点
- -- *>
- PsionicDrawPreviewItem = PsionicDrawPreviewItem or BaseClass(BaseItem)
- local PsionicDrawPreviewItem = PsionicDrawPreviewItem
-
- function PsionicDrawPreviewItem:__init(parent_wnd,prefab_asset,layer_name)
- self.base_file = "psionic"
- self.layout_file = "PsionicDrawPreviewItem"
- self.parent_wnd = parent_wnd
- self.layer_name = layer_name
-
- self.height = 0
- self.model = PsionicModel:getInstance()
- self:Load()
- end
-
- function PsionicDrawPreviewItem:Load_callback()
- local nodes = {
- "title_con:obj",
- "title_con/title_lb:tmp",
- "item_con:obj",
- }
- self:GetChildren(nodes)
-
- self:AddEvents()
- if self.need_refreshData then
- self:UpdateView()
- end
- end
-
- function PsionicDrawPreviewItem:AddEvents( )
-
- end
-
- function PsionicDrawPreviewItem:SetData( data )
- self.data = data
- if self.is_loaded then
- self.need_refreshData = false
- self:UpdateView()
- else
- self.need_refreshData = true
- end
- return self.height
- end
-
- function PsionicDrawPreviewItem:UpdateView( )
- if self.data then
- if self.data.title then
- self.title_con_obj:SetActive(true)
- self.title_lb_tmp.text = self.data.title
- self.height = 36
- elseif self.data.reward then
- self.title_con_obj:SetActive(false)
- self.height = math.ceil(#self.data.reward / 6) * 76
- SetSizeDelta(self.item_con, 6 * 76 + 6, self.height)
- self.reward_item_creator = self.reward_item_creator or self:AddUIComponent(UI.ItemListCreator)
- local info = {
- data_list = self.data.reward,
- scroll_view = self.item_con,
- item_con = self.item_con,
- obj_pool_type = UIObjPool.UIType.AwardItem,
- item_width = 62,
- item_height = 62,
- start_x = 6,
- start_y = -4.5,
- space_x = 14,
- space_y = 14,
- create_frequency = 0.01,
- alignment = UnityEngine.TextAnchor.UpperLeft,
- on_update_item = function(item, i, v)
- item:SetItemSize(62, 62)
- item:SetData(v[2])
- end,
- }
- self.reward_item_creator:UpdateItems(info)
- end
- end
- end
-
- function PsionicDrawPreviewItem:__delete( )
-
- end
|