将项目添加到列表时键入不匹配

时间:2018-10-04 22:10:10

标签: c# unity3d

我有四个类,三个在一个命名空间内,另一个则不行(如果那很重要)。当调用OnGUI并且if的值为true时,应该将一项添加到actions列表中。它尝试添加它,但是我在Unity编辑器中得到一个Type mismatch。我似乎不知道为什么。

namespace Bootstrap {
  public class Action : ScriptableObject  {}
  public class JumpTo : Action {}

  public class Event : MonoBehaviour {
    public List<Action> actions = new List<Action>();
  }
}

public class BootstrapEditor: EditorWindow {
  void OnGUI() {
    if(/* button click */){
      AddItem(typeof(JumpTo));
    }
  }

  void AddItem(Type actionType) {
    Bootstrap.Event evt = GetCurrentEvent();
    Debug.Log(actionType);
    Debug.Log(evt.actions);
    evt.actions.Add((Bootstrap.Action)Activator.CreateInstance(actionType));
  }
}

type mismatch console output

0 个答案:

没有答案