Version: 2023.2
public static void SetActiveTool ();
public static void SetActiveTool (Type type);
public static void SetActiveTool (EditorTools.EditorTool tool);

参数

type The EditorTool type to set as the active tool.
tool The EditorTool instance to set as the active tool.

描述

设置激活的 EditorTool

To set a built-in tool, such as Move, Rotate, or Scale, to active, use Tools.current instead.

using UnityEditor;
using UnityEditor.EditorTools;
using UnityEngine;

class ToolToSetActive : EditorTool
{
    [MenuItem("Tools/Set Active Tool Type")]
    static void SetActiveToolExample()
    {
        ToolManager.SetActiveTool<ToolToSetActive>();
    }

    Vector3 m_Position;

    public override void OnToolGUI(EditorWindow window)
    {
        m_Position = Handles.PositionHandle(m_Position, Quaternion.identity);
        Debug.Log(m_Position);
    }
}