self:AddEventListener(_MOE.Models.FirstChargeModel.FirstChargeModel_RefreshReward, self.RefreshRechargeBtnVisibility) --奖励 Item 发现任务 ID 出现在任务更新集合中,就会派发:然后执行下列函数。但“任务发生更新”不一定代表任务已经完成,也可能只是: --充值进度发生变化,但尚未达到目标; --服务端重新同步任务; --任务数据发生非状态更新。 functionUI_Recharge_FirstChargeMain:RefreshRechargeBtnVisibility(index) if index == 1then self:SwitcherSetActiveWidgetIndex(self.bp.w_switcher_Recharge, index) end
self:AddEventListener(_MOE.Models.FirstChargeModel.FirstChargeModel_RefreshReward, self.RefreshRechargeBtnVisibility) functionFirstCharge_MainView:SetRechargeBtnVisibility() local state = self.IsShowRechargeBtn and0or1--在InitListUI已经进行判断是否完成充值任务 self:SwitcherSetActiveWidgetIndex(self.bp.w_switcher_Recharge, state) --这里存在一个控件切换器,分别是充值按钮的垂直框和已解锁(一个图像)
end --首充奖励刷新时,切换到"已领取"状态
functionFirstCharge_MainView:RefreshRechargeBtnVisibility() ifself.FirstChargeDataMap == nilthen return end
self.IsShowRechargeBtn = true local taskInfoModel = _MOE.Models.TaskSystemModel:GetTaskInfoModel() for _, taskData inipairs(self.FirstChargeDataMap) do local latestTaskData = taskData.m_taskId and taskInfoModel:GetTaskInfoById(taskData.m_taskId) ornil if latestTaskData and latestTaskData:GetTaskIsCompletedOrFinish() then self.IsShowRechargeBtn = false break end end self:SetRechargeBtnVisibility()