local UITeamPVEReward = UIViewClass() local SliderSensitivityParam = FP.tonumberV1(DataSheetManager.ConstData:GetDataByID("SliderSensitivityParam").FloatValue) function UITeamPVEReward:OnOpened(reward) self.dragDict = {} for _,v in ipairs(reward) do self.LoopScroll_ItemView:AddData(v,0) end UIUtils.SetLabelText(self.UICommonPopUp.txt_Title, Const_IDS["IDS_RebelStrike_RewardPreview"]) end function UITeamPVEReward:OnCellInit(scrollRect, index, cellTable, data) --标题 local LevelMin = UTL.Item.GetNobilityByTeamLevel(data.LevelMin) -- 爵位转换 local LevelMax = UTL.Item.GetNobilityByTeamLevel(data.LevelMax) -- 爵位转换 local title = string.FormatByIdsId(Const_IDS.IDS_TeamDungeon1_Reward_Stage, data.StageNum, LevelMin, LevelMax) cellTable.txt_Title.text = title --奖励 local cfg = DataSheetManager.RewardClientShow:GetDataByClientShowID(data.RewardClientShowID) local levelRewardTable = DataSheetUtil.GetRewardClientShowItemTable(cfg) for i, rewardData in ipairs(levelRewardTable) do local contentItem = cellTable.Content[i] if not contentItem then contentItem = self:InstantiateCellCollection(cellTable.cell.gameObject, cellTable.Content, self.itemTemplate_Reward.gameObject) end UTL.Item.SetItemCell(contentItem, rewardData.ItemID, rewardData.ItemNum) UIUtils.SetActive(contentItem.gameObject, true) end for i = #levelRewardTable + 1, #cellTable.Content do UIUtils.SetActive(cellTable.Content[i].gameObject, false) end scrollRect:RegistTriggerEvent(cellTable.drag_Obj, UIEventTriggerType.BeginDrag, index) scrollRect:RegistTriggerEvent(cellTable.drag_Obj, UIEventTriggerType.Drag, index) scrollRect:RegistTriggerEvent(cellTable.drag_Obj, UIEventTriggerType.EndDrag, index) self.dragDict[cellTable.drag_Obj.gameObject] = cellTable.ScrollView.gameObject end function UITeamPVEReward:Cell_OnBeginDrag(scrollRect, index, comp, eventData) if math.abs(eventData.delta.x) > SliderSensitivityParam then self.curDragObj = self.dragDict[comp.gameObject] else self.curDragObj = self.LoopScroll_ItemView.gameObject end UIUtils.ExecuteBeginDrag(self.curDragObj, eventData) end function UITeamPVEReward:Cell_OnDrag(scrollRect, index, comp, eventData) UIUtils.ExecuteDrag(self.curDragObj, eventData) end function UITeamPVEReward:Cell_OnEndDrag(scrollRect, index, comp, eventData) UIUtils.ExecuteEndDrag(self.curDragObj, eventData) end function UITeamPVEReward:OnCellClicked(scrollRect, index, cellTable, target, data) for i,v in ipairs(cellTable.Content) do if v.event_Click == target then local itemId = DataSheetManager.RewardClientShow:GetDataByClientShowID(data.RewardClientShowID).ItemID UTL.ItemTips.ShowCommonTipsById(itemId[i]) break end end end function UITeamPVEReward:OnBackButtonPressed() self:OnButtonClicked(self.UICommonPopUp.btn_Close) end function UITeamPVEReward:OnButtonClicked(comp) if comp == self.UICommonPopUp.btn_Close then self:CloseView() end end return UITeamPVEReward