| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 | using FairyGUI;using UI.Task;namespace GFGGame{    public class TaskAchieveView : BaseWindow    {        private UI_TaskAchieveUI _ui;        public override void Dispose()        {            if (_ui != null)            {                _ui.Dispose();                _ui = null;            }            base.Dispose();        }        protected override void OnInit()        {            base.OnInit();            packageName = UI_TaskAchieveUI.PACKAGE_NAME;            _ui = UI_TaskAchieveUI.Create();            viewCom = _ui.target;            isfullScreen = true;            _ui.m_loaBg.url = ResPathUtil.GetBgImgPath("chengjiu_bg");            _ui.m_btnBack.onClick.Add(OnBtnBackClick);            _ui.m_listAchieveItem.itemRenderer = RenderListAchieveItem;            //_ui.m_listAchieveItem.onClickItem.Add(OnClickListRarityItem);        }        private void OnBtnBackClick()        {            ViewManager.Hide<TaskAchieveView>();            ViewManager.Show<TaskView>();        }        private void OnClickListRarityItem(EventContext context)        {            int subIndex = (int)(context.sender as GObject).data;            if (subIndex > 3)                PromptController.Instance.ShowFloatTextPrompt("ÔÝ먦Æô");            else                ViewManager.Show<TaskAchieveDetailView>(subIndex);        }        protected override void AddEventListener()        {            base.AddEventListener();            EventAgent.AddEventListener(ConstMessage.RED_CHANGE, UpdateRewardState);            EventAgent.AddEventListener(ConstMessage.ACHIEVEMENT_TASK_PRO_CHANGED, UpdateRewardState);        }        protected override void RemoveEventListener()        {            base.RemoveEventListener();            EventAgent.RemoveEventListener(ConstMessage.RED_CHANGE, UpdateRewardState);            EventAgent.RemoveEventListener(ConstMessage.ACHIEVEMENT_TASK_PRO_CHANGED, UpdateRewardState);        }        private void UpdateRewardState()        {            _ui.m_listAchieveItem.numItems = 6;        }        protected override void OnShown()        {            base.OnShown();            UpdateInfo();        }        protected async void UpdateInfo()        {            var result = await TaskSProxy.GetTaskTypePro();            if (!result) return;        }        protected override void OnHide()        {            base.OnHide();        }        private void RenderListAchieveItem(int index, GObject obj)        {            UI_AchieveItem listItem = UI_AchieveItem.Proxy(obj);            if(index >= 4)                listItem.m_AchieveType.selectedIndex = 4;            else                listItem.m_AchieveType.selectedIndex = index;            if (listItem.target.data == null)            {                listItem.target.onClick.Add(OnClickListRarityItem);            }            listItem.target.data = index;            var taskTypeProList = TaskDataManager.Instance.GetAchievementTaskTypeProList();            foreach (var info in taskTypeProList) {                if (info.AchievementType == index+1) {                    listItem.m_achieveBar.max = info.AllTaskNum;                    listItem.m_achieveBar.value = info.CompleteTaskNum;                    break;                }            }            RedDotController.Instance.SetComRedDot(listItem.target, TaskDataManager.Instance.CheckTaskSubRewardCanGet(TaskFuncType.Achievement, index),"",-30,120);            UI_AchieveItem.ProxyEnd();        }    }}
 |