RankProgressItem = RankProgressItem or BaseClass(BaseItem) local RankProgressItem = RankProgressItem function RankProgressItem:__init() self.base_file = "rank" self.layout_file = "RankProgressItem" self.model = RankModel:getInstance() self:Load() end function RankProgressItem:Load_callback() self.nodes = { "rankIcon:img:obj", "headCon:obj", "vipCon:obj", "nameCon:obj", "nameCon/sex:img", "nameCon/name:tmp", "rankNum:tmp", "score:tmp", "none:obj", "noneTip:tmp", } self:GetChildren(self.nodes) self.roleItem = HeadRoleItem.New(self.headCon) self.roleItem:SetItemSize(50,50) self.vipItem = RoleVipItem.New(self.vipCon) self:AddEvents() if self.need_refreshData then self:UpdateView() end end function RankProgressItem:AddEvents( ) end function RankProgressItem:UpdateView( ) --排名 if self.data.rank <= 3 then lua_resM:setImageSprite(self, self.rankIcon_img, "rank_asset","rank_rank_"..self.data.rank, true) self.rankIcon_obj:SetActive(true) self.rankNum_tmp.text = "" else -- lua_resM:setImageSprite(self, self.rankIcon_img, "uiComponent_asset","com_empty") self.rankIcon_obj:SetActive(false) self.rankNum_tmp.text = self.data.rank end if self.data.empty_data then self.headCon_obj:SetActive(false) self.vipCon_obj:SetActive(false) self.nameCon_obj:SetActive(false) self.score_tmp.text = "" self.none_obj:SetActive(true) self.noneTip_tmp.text = "" return end self.headCon_obj:SetActive(true) self.vipCon_obj:SetActive(true) self.nameCon_obj:SetActive(true) self.none_obj:SetActive(false) self.noneTip_tmp.text = "" local head_data = { vo = { id = self.data.role_id, -- server_id = self.data.ser_id, level = self.data.level, career = self.data.career, sex = self.data.sex, turn = self.data.turn, picture_ver = self.data.picture_ver, picture = self.data.picture, profile_photo_id = self.data.profile_photo_id, dress_board_id = self.data.dress_id, } } self.roleItem:SetData(head_data) self.vipItem:SetData(self.data.vip_flag,self.data.sup_vip_type) if self.data.vip_flag > 0 then SetAnchoredPositionX(self.nameCon,102) else SetAnchoredPositionX(self.nameCon,61) end self.name_tmp.text = self.data.name local sex_res = self.data.sex == 1 and "com_boy" or "com_girl" lua_resM:setImageSprite(self, self.sex_img, "common_asset", sex_res, true) SetAnchoredPositionX(self.sex, self.name_tmp.preferredWidth+4) local target_des_data = Config.ConfigRank.TargetDes[self.rank_type] self.score_tmp.text = string.format("%s<#fdffc2>%s%s", target_des_data.score_des, self.data.score, target_des_data.title_back_des) end function RankProgressItem:SetData( data, item_id, rank_type) self.data = data self.item_id = item_id self.rank_type = rank_type if self.is_loaded then self.need_refreshData = false self:UpdateView() else self.need_refreshData = true end end function RankProgressItem:__delete( ) if self.roleItem then self.roleItem:DeleteMe() self.roleItem = nil end if self.vipItem then self.vipItem:DeleteMe() self.vipItem = nil end end