Example #1
0
    void UpdateQuestionAndAnswer()
    {
        DailyAnswerInfo dailyAnswerInfo = DataManager.Manager <DailyAnswerManager>().GetDailyAnswerInfo();

        if (dailyAnswerInfo != null)
        {
            // 题 目
            m_label_question_label.text = dailyAnswerInfo.question;

            //答案

            m_lstGrid.Clear();
            for (int i = 0; i < m_grid_Grid.transform.childCount; i++)
            {
                Transform ts = m_grid_Grid.transform.GetChild(i);
                UIDailyAnswerAnswerGrid grid = ts.gameObject.GetComponent <UIDailyAnswerAnswerGrid>();
                if (grid == null)
                {
                    grid = ts.gameObject.AddComponent <UIDailyAnswerAnswerGrid>();
                }
                if (dailyAnswerInfo.answer != null && i < dailyAnswerInfo.answer.Count)
                {
                    grid.SetGridData(dailyAnswerInfo.answer[i]);

                    grid.SetAnswerDes(dailyAnswerInfo.answer[i].answerDes);

                    grid.RegisterUIEventDelegate(OnGridEventDlg);

                    m_lstGrid.Add(grid);
                }
            }
        }
    }
Example #2
0
    void SetGrid(UIDailyAnswerAnswerGrid grid)
    {
        //选中
        SetGridSelect(grid);

        //对错
        StartCoroutine(WaitForSetGridRightOrWorng(grid));
    }
Example #3
0
 void SetGridSelect(UIDailyAnswerAnswerGrid grid)
 {
     for (int i = 0; i < m_lstGrid.Count; i++)
     {
         //选中
         if (grid.m_data.index == m_lstGrid[i].m_data.index)
         {
             m_lstGrid[i].SetSelect(true);
         }
         else
         {
             m_lstGrid[i].SetSelect(false);
         }
     }
 }
Example #4
0
    IEnumerator WaitForSetGridRightOrWorng(UIDailyAnswerAnswerGrid grid)
    {
        yield return(new WaitForSeconds(1f));

        grid.SetRightOrWrong(grid.m_data.index == 1);

        for (int i = 0; i < m_lstGrid.Count; i++)
        {
            if (grid.m_data.index != 1)
            {
                if (m_lstGrid[i].m_data.index == 1)
                {
                    m_lstGrid[i].SetRightOrWrong(true);
                }
            }
        }

        DataManager.Manager <DailyAnswerManager>().AnswerIsCorrect(grid.m_data.index);
    }
Example #5
0
    private void OnGridEventDlg(UIEventType eventType, object data, object param)
    {
        if (eventType == UIEventType.Click)
        {
            UIDailyAnswerAnswerGrid grid = data as UIDailyAnswerAnswerGrid;
            if (grid != null)
            {
                if (DataManager.Manager <DailyAnswerManager>().CanAnswer)
                {
                    SetGrid(grid);

                    StartCoroutine(WaitForNextQuestion(grid.m_data.index));

                    //只能选一次答案,直到下道题下来,才可以回答
                    DataManager.Manager <DailyAnswerManager>().CanAnswer = false;
                }
            }
        }
    }
Example #6
0
    protected override void OnLoading()
    {
        base.OnLoading();

        for (int i = 0; i < m_grid_Grid.transform.childCount; i++)
        {
            Transform ts = m_grid_Grid.transform.GetChild(i);
            UIDailyAnswerAnswerGrid grid = ts.gameObject.GetComponent <UIDailyAnswerAnswerGrid>();
            if (grid == null)
            {
                grid = ts.gameObject.AddComponent <UIDailyAnswerAnswerGrid>();
            }

            grid.ReSetRightOrWrong();
            grid.SetSelect(false);
        }

        uint dailyId = DataManager.Manager <DailyAnswerManager>().DailyAnswerDailyId;

        m_dailyDb = GameTableManager.Instance.GetTableItem <DailyDataBase>(dailyId);
    }