public void AddRewardGrid(RankRewardGridData rd)
    {
        AssetCacheMgr.GetUIInstance("WeekRankDialogRewardItem.prefab", (prefab, id, go) =>
        {
            GameObject obj = (GameObject)go;

            obj.transform.FindChild("WeekRankDialogRewardItemFG").GetComponentsInChildren <UISprite>(true)[0].spriteName = rd.imgName;
            obj.transform.FindChild("WeekRankDialogRewardItemText").GetComponentsInChildren <UILabel>(true)[0].text      = rd.text;

            obj.transform.parent        = m_transRewardGridList;
            obj.transform.localPosition = new Vector3(m_listRewardGrid.Count * 215, 0, 0);
            obj.transform.localScale    = new Vector3(1, 1, 1);

            RewardGrid rg = obj.AddComponent <RewardGrid>();

            rg.Id = m_listRewardGrid.Count;
            m_listRewardGrid.Add(obj);
            MyDragCamera mdc = obj.AddComponent <MyDragCamera>();

            mdc.RelatedCamera = m_camRewardGrid;
            m_camRewardGrid.GetComponentsInChildren <MyDragableCamera>(true)[0].MAXX = 430 + 215 * (m_listRewardGrid.Count - 5);
        });
    }
    public void RefreshUI(int page)
    {
        switch (page)
        {
        case 0:
        {
            //SanctuaryUIViewManager.Instance.SetCurrentAchieve(weekContri.ToString());
            //SanctuaryUIViewManager.Instance.SetNextAchieve(MyInfo.nextLvNeedContribution.ToString());
            //SanctuaryUIViewManager.Instance.SetAcieveReward(SanctuaryRewardXMLData.GetAccuNextRankIcon(weekContri));
            //SanctuaryUIViewManager.Instance.SetNextAchievementRewardGoldNum(SanctuaryRewardXMLData.GetAccuNextGold(weekContri));
            var rwd = new List <MyRewardData>();
            foreach (var item in SanctuaryRewardXMLData.dataMap.
                     Where(x => x.Value.type == 3 && x.Value.level[0] <= weekLevel &&
                           weekLevel <= x.Value.level[1]))
            {
                if (weekContri >= item.Value.contribution)
                {
                    //可以领取
                    if (alreadyGetList.Contains(item.Key))
                    {
                        //已经领取过了
                        rwd.Add(new MyRewardData()
                            {
                                name         = string.Concat(ItemParentData.GetItem((int)ItemCode.GOLD).Name, " x ", item.Value.gold),
                                rewardID     = item.Key,
                                icon         = IconData.dataMap.Get(item.Value.icon).path,
                                isAlreadyGet = true,
                                isEnable     = true,
                                needScore    = item.Value.contribution,
                                progress     = (LanguageData.GetContent(46915, String.Concat(weekContri, '/', item.Value.contribution)))
                            });
                    }
                    else
                    {
                        rwd.Add(new MyRewardData()
                            {
                                name         = string.Concat(ItemParentData.GetItem((int)ItemCode.GOLD).Name, " x ", item.Value.gold),
                                rewardID     = item.Key,
                                icon         = IconData.dataMap.Get(item.Value.icon).path,
                                isAlreadyGet = false,
                                isEnable     = true,
                                needScore    = item.Value.contribution,
                                progress     = (LanguageData.GetContent(46915, String.Concat(weekContri, '/', item.Value.contribution)))
                            });
                    }
                }
                else
                {
                    rwd.Add(new MyRewardData()
                        {
                            name         = string.Concat(ItemParentData.GetItem((int)ItemCode.GOLD).Name, " x ", item.Value.gold),
                            rewardID     = item.Key,
                            icon         = IconData.dataMap.Get(item.Value.icon).path,
                            isAlreadyGet = false,
                            isEnable     = false,
                            needScore    = item.Value.contribution,
                            progress     = (LanguageData.GetContent(46915, String.Concat(weekContri, '/', item.Value.contribution)))
                        });
                }
            }

            SanctuaryUIViewManager.Instance.GenerateMyRewardList(rwd);
        }
        break;

        case 1:
        {
            SanctuaryUIViewManager.Instance.ClearRankGridList();
            for (int i = 0; i < weekData.Count; i++)
            {
                RankGridData data = new RankGridData();
                data.achieve = weekData[i].contribution.ToString();
                data.name    = weekData[i].name;
                data.rank    = (i + 1).ToString();
                if (data.name.Equals(MogoWorld.thePlayer.name))
                {
                    data.highLight = true;
                }
                else
                {
                    data.highLight = false;
                }
                SanctuaryUIViewManager.Instance.AddRankGrid(data, i);
            }
            SanctuaryUIViewManager.Instance.SetPlayerName(MogoWorld.thePlayer.name);
            SanctuaryUIViewManager.Instance.SetPlayerRank(MyWeek.ToString());
            SanctuaryUIViewManager.Instance.SetPlayerContribute(weekContri.ToString());
            var weekRank = SanctuaryRewardXMLData.GetWeekRankID();
            SanctuaryUIViewManager.Instance.ClearRewardGridList();

            for (int i = 0; i < weekRank.Count; i++)
            {
                RankRewardGridData rrgd = new RankRewardGridData();
                rrgd.imgName = IconData.dataMap.Get(SanctuaryRewardXMLData.dataMap.Get(weekRank[i]).icon).path;
                rrgd.text    = String.Format("第{0}名宝箱", i + 1);
                SanctuaryUIViewManager.Instance.AddRewardGrid(rrgd);
            }
            break;
        }

        case 2:
        {
            SanctuaryUIViewManager.Instance.ClearRankGridList();
            for (int i = 0; i < dayData.Count; i++)
            {
                RankGridData data = new RankGridData();
                data.achieve = dayData[i].contribution.ToString();
                data.name    = dayData[i].name;
                data.rank    = (i + 1).ToString();
                if (data.name.Equals(MogoWorld.thePlayer.name))
                {
                    data.highLight = true;
                }
                else
                {
                    data.highLight = false;
                }
                SanctuaryUIViewManager.Instance.AddRankGrid(data, i);
            }
            SanctuaryUIViewManager.Instance.SetPlayerName(MogoWorld.thePlayer.name);
            SanctuaryUIViewManager.Instance.SetPlayerRank(MyDay.ToString());
            SanctuaryUIViewManager.Instance.SetPlayerContribute(dayContri.ToString());
            var dayRank = SanctuaryRewardXMLData.GetDayRankID();
            SanctuaryUIViewManager.Instance.ClearRewardGridList();

            for (int i = 0; i < dayRank.Count; i++)
            {
                RankRewardGridData rrgd = new RankRewardGridData();
                rrgd.imgName = IconData.dataMap.Get(SanctuaryRewardXMLData.dataMap.Get(dayRank[i]).icon).path;
                rrgd.text    = String.Format("第{0}名宝箱", i + 1);
                SanctuaryUIViewManager.Instance.AddRewardGrid(rrgd);
            }
            break;
        }

        default:
            break;
        }
    }
    public void RefreshUI(int page)
    {
        switch (page)
        {
            case 0:
                {
                    //SanctuaryUIViewManager.Instance.SetCurrentAchieve(weekContri.ToString());
                    //SanctuaryUIViewManager.Instance.SetNextAchieve(MyInfo.nextLvNeedContribution.ToString());
                    //SanctuaryUIViewManager.Instance.SetAcieveReward(SanctuaryRewardXMLData.GetAccuNextRankIcon(weekContri));
                    //SanctuaryUIViewManager.Instance.SetNextAchievementRewardGoldNum(SanctuaryRewardXMLData.GetAccuNextGold(weekContri));
                    var rwd = new List<MyRewardData>();
                    foreach (var item in SanctuaryRewardXMLData.dataMap.
                        Where(x => x.Value.type == 3 && x.Value.level[0] <= weekLevel
                        && weekLevel <= x.Value.level[1]))
                    {
                        if (weekContri >= item.Value.contribution)
                        {
                            //可以领取
                            if (alreadyGetList.Contains(item.Key))
                            {
                                //已经领取过了
                                rwd.Add(new MyRewardData()
                                {
                                    name = string.Concat(ItemParentData.GetItem((int)ItemCode.GOLD).Name, " x ", item.Value.gold),
                                    rewardID = item.Key,
                                    icon = IconData.dataMap.Get(item.Value.icon).path,
                                    isAlreadyGet = true,
                                    isEnable = true,
                                    needScore = item.Value.contribution,
                                    progress = (LanguageData.GetContent(46915, String.Concat(weekContri, '/', item.Value.contribution)))
                                });
                            }
                            else
                            {

                                rwd.Add(new MyRewardData()
                                {
                                    name = string.Concat(ItemParentData.GetItem((int)ItemCode.GOLD).Name, " x ", item.Value.gold),
                                    rewardID = item.Key,
                                    icon = IconData.dataMap.Get(item.Value.icon).path,
                                    isAlreadyGet = false,
                                    isEnable = true,
                                    needScore = item.Value.contribution,
                                    progress = (LanguageData.GetContent(46915, String.Concat(weekContri, '/', item.Value.contribution)))
                                });

                            }
                        }
                        else
                        {

                            rwd.Add(new MyRewardData()
                            {
                                name = string.Concat(ItemParentData.GetItem((int)ItemCode.GOLD).Name, " x ", item.Value.gold),
                                rewardID = item.Key,
                                icon = IconData.dataMap.Get(item.Value.icon).path,
                                isAlreadyGet = false,
                                isEnable = false,
                                needScore = item.Value.contribution,
                                progress = (LanguageData.GetContent(46915, String.Concat(weekContri, '/', item.Value.contribution)))
                            });
                        }


                    }

                    SanctuaryUIViewManager.Instance.GenerateMyRewardList(rwd);
                }
                break;
            case 1:
                {
                    SanctuaryUIViewManager.Instance.ClearRankGridList();
                    for (int i = 0; i < weekData.Count; i++)
                    {
                        RankGridData data = new RankGridData();
                        data.achieve = weekData[i].contribution.ToString();
                        data.name = weekData[i].name;
                        data.rank = (i + 1).ToString();
                        if (data.name.Equals(MogoWorld.thePlayer.name))
                        {
                            data.highLight = true;
                        }
                        else
                        {
                            data.highLight = false;
                        }
                        SanctuaryUIViewManager.Instance.AddRankGrid(data, i);
                    }
                    SanctuaryUIViewManager.Instance.SetPlayerName(MogoWorld.thePlayer.name);
                    SanctuaryUIViewManager.Instance.SetPlayerRank(MyWeek.ToString());
                    SanctuaryUIViewManager.Instance.SetPlayerContribute(weekContri.ToString());
                    var weekRank = SanctuaryRewardXMLData.GetWeekRankID();
                    SanctuaryUIViewManager.Instance.ClearRewardGridList();

                    for (int i = 0; i < weekRank.Count; i++)
                    {
                        RankRewardGridData rrgd = new RankRewardGridData();
                        rrgd.imgName = IconData.dataMap.Get(SanctuaryRewardXMLData.dataMap.Get(weekRank[i]).icon).path;
                        rrgd.text = String.Format("第{0}名宝箱", i + 1);
                        SanctuaryUIViewManager.Instance.AddRewardGrid(rrgd);
                    }
                    break;
                }
            case 2:
                {
                    SanctuaryUIViewManager.Instance.ClearRankGridList();
                    for (int i = 0; i < dayData.Count; i++)
                    {
                        RankGridData data = new RankGridData();
                        data.achieve = dayData[i].contribution.ToString();
                        data.name = dayData[i].name;
                        data.rank = (i + 1).ToString();
                        if (data.name.Equals(MogoWorld.thePlayer.name))
                        {
                            data.highLight = true;
                        }
                        else
                        {
                            data.highLight = false;
                        }
                        SanctuaryUIViewManager.Instance.AddRankGrid(data, i);
                    }
                    SanctuaryUIViewManager.Instance.SetPlayerName(MogoWorld.thePlayer.name);
                    SanctuaryUIViewManager.Instance.SetPlayerRank(MyDay.ToString());
                    SanctuaryUIViewManager.Instance.SetPlayerContribute(dayContri.ToString());
                    var dayRank = SanctuaryRewardXMLData.GetDayRankID();
                    SanctuaryUIViewManager.Instance.ClearRewardGridList();

                    for (int i = 0; i < dayRank.Count; i++)
                    {
                        RankRewardGridData rrgd = new RankRewardGridData();
                        rrgd.imgName = IconData.dataMap.Get(SanctuaryRewardXMLData.dataMap.Get(dayRank[i]).icon).path;
                        rrgd.text = String.Format("第{0}名宝箱", i + 1);
                        SanctuaryUIViewManager.Instance.AddRewardGrid(rrgd);

                    }
                    break;
                }
            default:
                break;
        }
    }
    public void AddRewardGrid(RankRewardGridData rd)
    {
        AssetCacheMgr.GetUIInstance("WeekRankDialogRewardItem.prefab", (prefab, id, go) =>
        {
            GameObject obj = (GameObject)go;

            obj.transform.FindChild("WeekRankDialogRewardItemFG").GetComponentsInChildren<UISprite>(true)[0].spriteName = rd.imgName;
            obj.transform.FindChild("WeekRankDialogRewardItemText").GetComponentsInChildren<UILabel>(true)[0].text = rd.text;

            obj.transform.parent = m_transRewardGridList;
            obj.transform.localPosition = new Vector3(m_listRewardGrid.Count * 215, 0, 0);
            obj.transform.localScale = new Vector3(1, 1, 1);

            RewardGrid rg = obj.AddComponent<RewardGrid>();

            rg.Id = m_listRewardGrid.Count;
            m_listRewardGrid.Add(obj);
            MyDragCamera mdc = obj.AddComponent<MyDragCamera>();

            mdc.RelatedCamera = m_camRewardGrid;
            m_camRewardGrid.GetComponentsInChildren<MyDragableCamera>(true)[0].MAXX = 430 + 215 * (m_listRewardGrid.Count - 5);
        });
    }