【问题标题】:How to execute a method when I create a new script, or rename an existing one?创建新脚本或重命名现有脚本时如何执行方法?
【发布时间】:2017-12-15 22:10:44
【问题描述】:

我想知道在创建新脚本或重命名现有脚本时如何执行方法?

我知道 Unity 在创建脚本时会执行一些流程。例如,当您创建脚本时,该脚本将添加到窗口Component > Scripts > NamespaceOfYourScript > NameOfYOurScript 中的组件列表中。我想做类似的事情,但是对于我自己的自定义窗口。我很确定该进程是可访问的,但我不知道它的名称、如何访问和使用它。

我已经搜索了文档,统一答案,堆栈溢出,但我还没有找到我正在寻找的东西(不知道您正在寻找的确切流程关键字是什么,这对搜索没有帮助) .

我想要一个有点像这样的脚本:

 using UnityEngine;
 using UnityEditor;

 public class MyScript : SomeScriptProcess ()
 {
     void OnScriptSaved (System.Type TheScriptThatWasJustSaved)
     {
         //I execute my stuff here
     }
 }

任何帮助都会很棒。 :)

【问题讨论】:

    标签: c# unity3d process save editor


    【解决方案1】:

    您可以访问资产文件夹。从那里,迭代所有文件夹并查找 .cs 文件。

    Method to get all files within folder and subfolders that will return a list

    将它们存储在列表中,并使用它在按钮中显示名称。您也可以制作 Unity 拥有的搜索系统。

    单击按钮时,使用带反射的 AddComponent:

    https://forum.unity3d.com/threads/add-a-custom-component-by-searching-for-its-name.323361/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-03-23
      • 1970-01-01
      • 2016-10-19
      • 2017-11-26
      • 1970-01-01
      • 2013-03-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多