【发布时间】:2019-12-08 03:57:08
【问题描述】:
我有一个用于事件系统的代表列表。我正在使用一个自定义编辑器,它查看代表列表并显示一个带有代表名称的按钮。我想知道如何使用editor ping object ping 委托所在的脚本。由于Delegate.Method.DeclaringType,我有.cs 文件的文件路径,我只是不知道如何找到要 ping 的 monoscript 对象。
foreach (var callback in obj.Callbacks)
{
// Path to .cs file
var path = callback.Method.DeclaringType + ".cs";
// Button showing the delegates
if(GUILayout.Button($"{callback.Method.Name}", new GUIStyle(EditorStyles.objectField))){
// WANT TO PING .cs FILE OF THE DELEGATE FROM FILE PATH ON BUTTON CLICK
//EditorGUIUtility.PingObject((MonoScript.FromMonoBehaviour(path));}}
我知道 stackoverflow 上有类似的问题,但我找不到关于该主题的任何结论性答案。知道我已经在寻找解决方案并正在向互联网寻求帮助。
谢谢
【问题讨论】:
-
好吧,如果您使用与您的文件夹层次结构相匹配的命名空间,那可能会起作用。
-
Afaik
FromMonoBehaviour需要MonoBehaviour类型的实例 .. 你不能传入路径...
标签: unity3d unity-editor