/// <summary> /// デバッグデータロード処理 /// TODO:後で削除 /// </summary> private void DebugDataLoad() { // MemoMasterデータロード _memoListMst.Clear(); for (int memoMstCnt = 0; memoMstCnt < memoPrefabs.m_markPrefabs.Length; memoMstCnt++) { MemoListMaster memoMstData = new MemoListMaster(); memoMstData.memoId = memoMstCnt; memoMstData.name = memoPrefabs.m_markPrefabs[memoMstCnt].name; memoMstData.detail = memoPrefabs.m_markPrefabs[memoMstCnt].name; memoMstData.img = memoPrefabs.m_markPrefabs [memoMstCnt].GetComponent <Image> (); _memoListMst.Add(memoMstData); } }
/// <summary> /// アイテムリスト生成処理 /// </summary> private void CreateMemoList() { bool isFirst = true; if (!_isLoad) { // ユーザが所持しているアイテムの種類の数だけノードを生成 foreach (MemoListMaster memoData in _memoListMst) { if (memoData.memoId != null) { Debug.Log(memoData.img.mainTexture); _memoName.text = memoData.name; _memoImage.sprite = memoData.img.sprite; Debug.Log("2"); if (isFirst) { Debug.Log("3"); // 詳細部に1レコード目のデータの情報をセット _memoDetail.text = memoData.detail; memoPrefabs.SetCurrentMarkType(0); isFirst = false; Debug.Log("4"); } Debug.Log("5"); // 別クラスに定義している子オブジェクトをインスタンス化するための関数 Button node = this.SetChild(_memoListContent, _memoNode).GetComponent <Button>(); Debug.Log("6"); // 参照渡しだとAddListner時に値がうまくセットされないため値渡しに変換 MemoListMaster data = memoData; // ノードクリック時に詳細が表示されるようにイベントを付与 node.onClick.AddListener(() => MemoSetting(data)); Debug.Log("7"); } } _isLoad = true; } }
/// <summary> /// 詳細設定処理 /// </summary> /// <param name="data"></param> /// <param name="cnt"></param> private void MemoSetting(MemoListMaster data) { _memoDetail.text = data.detail; memoPrefabs.SetCurrentMarkType(data.memoId); }