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

GameObject.CompareTag

建议更改

成功!

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

关闭

提交失败

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

关闭

取消

切换到手册

声明

public bool CompareTag(string tag);

参数

tag 要检查 GameObject 上的标签。

返回值

bool 如果 GameObject 具有给定标签,则为 true,否则为 false

描述

检查指定的标签是否附加到 GameObject。

下面的示例在 Collider 上调用 CompareTag 以检查它是否具有 Player 标签。

// Immediate death trigger.
// Destroys any colliders that enter the trigger, if they are tagged "Player".
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { void OnTriggerEnter(Collider other) { if (other.gameObject.CompareTag("Player")) { Destroy(other.gameObject); } } }

其他资源:GameObject.FindWithTag


声明

public bool CompareTag(TagHandle tag);

参数

tag 表示要检查 GameObject 上的标签的 TagHandle

返回值

bool 如果 GameObject 具有给定标签,则为 true,否则为 false

描述

检查指定的标签是否附加到 GameObject。

此方法的重载(采用 TagHandle)可能比采用字符串的重载更快,尤其是在可以将相同的 TagHandle 重用于许多调用时。

下面的示例在 Collider 上使用 TagHandle 调用 CompareTag 以检查它是否具有 Player 标签

// Immediate death trigger.
// Destroys any colliders that enter the trigger, if they are tagged "Player".
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { private TagHandle _playerTag; public void OnEnable() { _playerTag = TagHandle.GetExistingTag("Player"); }

void OnTriggerEnter(Collider other) { if (other.gameObject.CompareTag(_playerTag)) { Destroy(other.gameObject); } } }

其他资源:TagHandle