版本:Unity 6 (6000.0)
语言英语
  • C#

DefaultExecutionOrder

UnityEngine 中的类

/

实现于:UnityEngine.CoreModule

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交内容,但我们确实会阅读用户提出的每一项更改建议,并在适当情况下进行更新。

关闭

提交失败

由于某些原因,您的更改建议无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

描述

指定从 MonoBehaviour 派生的类的脚本执行顺序,相对于其他从 MonoBehaviour 派生的类型。

DefaultExecutionOrder 属性提供了一种方法,可以通过代码指定不同 MonoBehaviour 脚本之间的执行顺序,而不是通过 Unity 编辑器中的 项目设置 窗口。有关脚本执行顺序及其在编辑器中的配置的更多信息,请参阅手册中的 脚本执行顺序

此属性针对类,但它只对从 MonoBehaviour 继承的类有效。

作为参数提供的整数值等同于在 **项目设置** 窗口的 **脚本执行顺序** 部分中设置的整数值。分配给从 MonoBehaviour 派生的类型的整数值确定该类型的脚本组件相对于其他 MonoBehaviour 脚本的执行顺序优先级。脚本按照从最低到最高的顺序执行,例如:-200、-100、-50、50、100、200。

注意:谨慎使用此属性。在代码中使用 DefaultExecutionOrder 定义的执行顺序不会显示在编辑器 **项目设置** 部分的 **脚本执行顺序** 中。如果您在代码中使用 DefaultExecutionOrder 为从 MonoBehaviour 派生的类型定义执行顺序,但在编辑器 **项目设置** 窗口中为同一类型定义了不同的值,Unity 将使用在编辑器 UI 中定义的值。

另请参阅:MonoBehaviour

using UnityEngine;
// Add this script to a GameObject
[DefaultExecutionOrder(50)]
public class ExampleClass : MonoBehaviour
{
// This Start function will execute after the Start functions of any other MonoBehaviour scripts that
// have an execution order < 50 and before any with an execution order > 50. If you define a different
// execution order value for this ExampleClass in the Editor's Script Execution Order settings, the
// value defined in Script Execution Order settings is the one applied at runtime.
    void Start()
    {
        Debug.Log("Execution order 50");
    }
}

属性

order定义从 MonoBehaviour 派生的类的执行优先级顺序的整数。

构造函数

DefaultExecutionOrder将从 MonoBehaviour 派生的类的脚本执行顺序设置为提供的整数参数的值。