void getCompeteBadges() { ClickBtn.Play(); LearningPanel.SetActive(false); CompetePanel.SetActive(true); Text _badgeName;//獎章名稱 _badgeBtn = new Button[competeBadgeCount]; _targetLevel = xmlprocess.getAchieveCompeteBadges(learningBadgeCount + 1, learningBadgeCount + competeBadgeCount); for (int i = 1; i <= competeBadgeCount; i++) { _badgeBtn[i - 1] = CompeteBadge.GetComponentsInChildren <Button>()[i - 1]; //存取學習區的所有獎章物件 _badgeName = _badgeBtn[i - 1].GetComponentsInChildren <Text>()[0]; //獎章名稱 _badgeName.text = badgeName[(learningBadgeCount - 1) + i]; //因為陣列0~learningBadgeCount-1存放值為學習區的Badge名稱,因此在此起始值為learningBadgeCount switch (_targetLevel[i - 1] - 1) //當前階段 { case 0: _badgeBtn[i - 1].image.sprite = _badgeBtn[i - 1].image.sprite = Resources.Load <Sprite>("Image/Main/null"); break; case 1: _badgeBtn[i - 1].image.sprite = _badgeBtn[i - 1].image.sprite = Resources.LoadAll <Sprite>("Image/Main/bg")[5]; _badgeBtn[i - 1].GetComponentsInChildren <Image>()[1].color = Color.white; break; case 2: _badgeBtn[i - 1].image.sprite = _badgeBtn[i - 1].image.sprite = Resources.LoadAll <Sprite>("Image/Main/bg")[4]; _badgeBtn[i - 1].GetComponentsInChildren <Image>()[1].color = Color.white; break; case 3: _badgeBtn[i - 1].image.sprite = _badgeBtn[i - 1].image.sprite = Resources.LoadAll <Sprite>("Image/Main/bg")[3]; _badgeBtn[i - 1].GetComponentsInChildren <Image>()[1].color = Color.white; break; } } _badgeBtn[0].onClick.AddListener(delegate() { showDescription(6, _targetLevel[0]); }); _badgeBtn[1].onClick.AddListener(delegate() { showDescription(7, _targetLevel[1]); }); _badgeBtn[2].onClick.AddListener(delegate() { showDescription(8, _targetLevel[2]); }); _badgeBtn[3].onClick.AddListener(delegate() { showDescription(9, _targetLevel[3]); }); _badgeBtn[4].onClick.AddListener(delegate() { showDescription(10, _targetLevel[4]); }); _badgeBtn[5].onClick.AddListener(delegate() { showDescription(11, _targetLevel[5]); }); _badgeBtn[6].onClick.AddListener(delegate() { showDescription(12, _targetLevel[6]); }); }