autoImport("HeadIconCell") local baseCell = autoImport("BaseCell") FriendApplyCell = class("FriendApplyCell", baseCell) function FriendApplyCell:Init() self:FindObjs() self:AddButtonEvt() self:AddCellClickEvent() end function FriendApplyCell:FindObjs() local headContainer = self:FindGO("HeadContainer") self.headIcon = HeadIconCell.new() self.headIcon:CreateSelf(headContainer) self.headIcon.gameObject:AddComponent(UIDragScrollView) self.headIcon:SetScale(0.6) self.headIcon:SetMinDepth(1) self.Profession = self:FindGO("ProfessIcon"):GetComponent(UISprite) self.professIconBG = self:FindGO("CareerBg"):GetComponent(UISprite) self.Level = self:FindGO("Level"):GetComponent(UILabel) self.GenderIcon = self:FindGO("GenderIcon"):GetComponent(UIMultiSprite) self.FriendName = self:FindGO("FriendName"):GetComponent(UILabel) self.Bg = self:FindGO("Bg") end function FriendApplyCell:AddButtonEvt() self:SetEvent(self.headIcon.clickObj.gameObject, function () self:PassEvent(FriendEvent.SelectHead, self) end) local addFriendBtn = self:FindGO("AddFriendBtn") self:AddClickEvent(addFriendBtn,function (g) self:AddFriend(g) end) local ignoreFriendBtn = self:FindGO("IgnoreFriendBtn") self:AddClickEvent(ignoreFriendBtn,function (g) self:IgnoreFriend(g) end) end local friend = {} function FriendApplyCell:AddFriend() -- TableUtility.ArrayClear(friend) -- table.insert(friend,self.data.guid) -- FriendProxy.Instance:CallAddFriend(friend) FunctionPlayerTip.CallAddFriend(self.data.guid, self.data.name) end function FriendApplyCell:IgnoreFriend() ServiceSessionSocialityProxy.Instance:CallRemoveRelation(self.data.guid, SocialManager.PbRelation.Apply) end function FriendApplyCell:SetData(data) self.data = data self.gameObject:SetActive( data ~= nil ) if data then local config = Table_Class[data.profession] if config then IconManager:SetProfessionIcon(config.icon, self.Profession) local iconColor = ColorUtil["CareerIconBg"..config.Type] if(iconColor==nil) then iconColor = ColorUtil.CareerIconBg0 end self.professIconBG.color = iconColor end self.Level.text = "Lv."..data.level if data.portrait and data.portrait ~= 0 then local headData = Table_HeadImage[data.portrait] if headData and headData.Picture then self.headIcon:SetSimpleIcon(headData.Picture) end else self.headIcon:SetData(data) end if data.gender == ProtoCommon_pb.EGENDER_MALE then self.GenderIcon.CurrentState = 0 elseif data.gender == ProtoCommon_pb.EGENDER_FEMALE then self.GenderIcon.CurrentState = 1 end self.GenderIcon:MakePixelPerfect() self.FriendName.text = data.name local ERedSys = SceneTip_pb.EREDSYS_SOCIAL_FRIEND_APPLY local isNew = RedTipProxy.Instance:IsNew(ERedSys, data.guid) if isNew then self:RegisterRedTip(ERedSys) end end end function FriendApplyCell:RegisterRedTip(key) RedTipProxy.Instance:RegisterUI(key, self.Bg, 10, {-2,-6}) end