Object.FindObjectOfType

切换到手册
public static T FindObjectOfType ();

返回

T 返回与指定类型匹配的对象。如果没有任何匹配该类型的对象,则返回 null。

描述

返回第一个类型为 type 的已加载的激活对象。

::ref::.FindObjectOfType 不返回任何资源(网格、纹理、预制件等)或非激活对象。该函数用于查找 GameObject。它不返回设置了 HideFlags.DontSave 的 Object。

该方法调用 Object.FindObjectOfType 并返回与该类型匹配的对象;如果没有任何匹配该类型的对象,则返回 null。

请注意,该函数的运行速度非常缓慢。不建议对每一帧都使用该函数。 在大多数情况下,您可以改为使用单例模式。

另请参阅:Object.FindObjectsOfType

using UnityEngine;
using System.Collections;

// Search for any object of Type Camera, // if found print its name, else print a message // that says that it was not found. public class ExampleClass : MonoBehaviour { void Start() { Camera cam = (Camera)FindObjectOfType(typeof(Camera)); if (cam) Debug.Log("Camera object found: " + cam.name); else Debug.Log("No Camera object could be found"); } }

public static Object FindObjectOfType (Type type);

参数

type要查找的对象类型。

返回

Object 返回所有类型为 type 的已加载的激活对象的数组。

描述

此方法较旧的非泛型版本。在大多数情况下,你应该使用此方法的泛型版本。