示例
using UnityEngine;
using UnityEditor;
using System.Collections;
public class TestEditor {
//监听脚本编译完成
[UnityEditor.Callbacks.DidReloadScripts()]
static void OnScriptReload()
{
Debug.Log("OnScriptReload()");
//监听播放状态
EditorApplication.playmodeStateChanged -= OnPlaymodeStateChanged;
EditorApplication.playmodeStateChanged += OnPlaymodeStateChanged;
}
[UnityEditor.Callbacks.DidReloadScripts(1)]
static void OnScriptReload1()
{
Debug.Log("OnScriptReload1() ");
}
static void OnPlaymodeStateChanged()
{
Debug.Log(string.Format("isPlaying={0}, isPlayingOrWillChangePlaymode={1}",
UnityEngine.Application.isPlaying, EditorApplication.isPlayingOrWillChangePlaymode));
if (UnityEngine.Application.isPlaying && EditorApplication.isPlayingOrWillChangePlaymode)
{
}
}
}
编译完成并运行
停止运行