源战役客户端
Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
 
 
 
 
 

84 Zeilen
2.4 KiB

-- <*
-- @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