【发布时间】:2021-02-23 10:08:05
【问题描述】:
我正在构建一个足球经理模拟游戏。我有一个玩家列表,当游戏开始时,使用 PlayerDisplayPrefabs 将玩家实例化到 SquadList 中。我希望这个 SquadList 可以拖放,并且能够在一线队中交换球员及其统计数据。
我已将拖动功能添加到 Prefab,但为了添加拖放功能,我需要将每个 Prefab 实例放到其自己的面板上,而不是 SquadList 面板上。
但是,如果我将登陆面板放到 SquadList 面板上,我的列表将实例化在这些面板下方而不是顶部。
Thia 是我用来将列表实例化到 SquadDisplay 面板中的代码。
using System.Collections;
using UnityEngine;
using System.Collections.Generic;
using UnityEngine.UI;
public class SquadDisplay : MonoBehaviour
{
public Transform targetTransform;
public PlayerDisplay playerDisplayPrefab;
public List<Player> items = new List<Player>();
// Start is called before the first frame update
void Start()
{
foreach (Player item in items)
{
PlayerDisplay display = (PlayerDisplay)Instantiate(playerDisplayPrefab);
display.transform.SetParent(targetTransform, false);
display.Prime(item);
}
}
// Update is called once per frame
void Update()
{
}
}
有什么想法吗?谢谢JP
【问题讨论】:
标签: c# list unity3d drag-and-drop instance