ohshimatani / groupA_AcceLance

2 stars 0 forks source link

コレクション画面に漢字のデータを反映させる #86

Closed ohshimatani closed 1 year ago

ohshimatani commented 2 years ago

issue #85

ohshimatani commented 2 years ago

方針(issueのを再掲)

image (10)

ohshimatani commented 2 years ago

KanjiCellのフィールドにkanjiInfoがあり、set is privateとあるため読み取り専用?と解釈したが、それではまずいのでは? 要は、セルの配置時に、KanjiCellクラスのフィールドを設定したいが、そのタイミングでセットするはず。

    /// <summary>
    /// 引数の情報をもとに、漢字のセル or ハテナのセルを配置する。
    /// </summary>
    /// <param name="kanjiInfo"></param>
    private void DisposeKanjiCell(KanjiInfo[] kanjiInfo)
    {
        // 取得した漢字の数だけKanjiCellを生成し、ScrollView内にGrid配置
        for (int i = 0; i < kanjiInfo.Length; i++)
        {
            if (kanjiInfo[i].defeat_count >= 1)
            {
                // 倒された数が1より大きいとき、その漢字Cellを表示
                GameObject kanjiCell = Instantiate(kanjiCellPrefab, contentRectTransform);
                kanjiCell.GetComponentInChildren<Text>().text = kanjiInfo[i].kanji;
                // ココ!!!
                kanjiCell.GetComponentInChildren<KanjiCell>().kanjiInfo = kanjiInfo[i];
            } else
            {
                // 倒されていない漢字のとき、ハテナを表示
                Instantiate(secretCellPrefab, contentRectTransform);
            }
        }
    }
ohshimatani commented 1 year ago

@Parasuatene レビューお願いします!

Parasuatene commented 1 year ago

コードの可読性に関してはリファクタリングする余地がありそうであるが、パイロットテストの都合上一旦マージすることにする。

別Issueでリファクタリングを行うこととする。