Canvas

class in UnityEngine

/

Inherits from:Behaviour

Switch to Manual

Description

可用于屏幕渲染的元素。

Elements on a canvas are rendered AFTER Scene rendering, either from an attached camera or using overlay mode.

using System.Collections;
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
using UnityEngine.UI;

// Create a Canvas that holds a Text GameObject.

public class ExampleClass : MonoBehaviour { void Start() { GameObject myGO; GameObject myText; Canvas myCanvas; Text text; RectTransform rectTransform;

// Canvas myGO = new GameObject(); myGO.name = "TestCanvas"; myGO.AddComponent<Canvas>();

myCanvas = myGO.GetComponent<Canvas>(); myCanvas.renderMode = RenderMode.ScreenSpaceOverlay; myGO.AddComponent<CanvasScaler>(); myGO.AddComponent<GraphicRaycaster>();

// Text myText = new GameObject(); myText.transform.parent = myGO.transform; myText.name = "wibble";

text = myText.AddComponent<Text>(); text.font = (Font)Resources.Load("MyFont"); text.text = "wobble"; text.fontSize = 100;

// Text position rectTransform = text.GetComponent<RectTransform>(); rectTransform.localPosition = new Vector3(0, 0, 0); rectTransform.sizeDelta = new Vector2(400, 200); } }

Variables

additionalShaderChannels获取或设置要在创建 Canvas 网格时使用的附加着色器通道的遮罩。
cachedSortingLayerValue基于 SortingLayerID 缓存的计算值。
isRootCanvas这是根 Canvas 吗?
normalizedSortingGridSize画布将可渲染区域拆分成的标准化网格大小。
overridePixelPerfect允许嵌套画布重写从父画布继承的 pixelPerfect 设置。
overrideSorting覆盖画布的排序。
pixelPerfect强制画布中的元素按像素对齐。仅在 renderMode 为屏幕空间时适用。
pixelRect获取 Canvas 的渲染矩形。
planeDistance生成画布的位置到摄像机的距离。
referencePixelsPerUnit被视为默认值的 Pixels Per Unit 数量。
renderMode该 Canvas 处于世界模式还是覆盖模式?
renderOrderThe render order in which the canvas is being emitted to the Scene. (Read Only)
rootCanvas通过检查每个父项并返回找到的最后一个画布来返回最接近根的 Canvas。如果未找到其他画布,则画布返回自身。
scaleFactor用于缩放整个画布,同时仍使其适合屏幕。仅在 renderMode 为屏幕空间时适用。
sortingLayerID画布排序图层的唯一 ID。
sortingLayerName画布排序图层的名称。
sortingOrder排序图层中的画布顺序。
targetDisplay用于覆盖模式,将显示 UI 画布的显示索引。
worldCamera在“Screen Space - Camera”中用于调整 Canvas 大小的 Camera。也在 World Space Canvas 中用作通过其发送事件的 Camera。

Static Functions

ForceUpdateCanvases强制所有画布更新其内容。
GetDefaultCanvasMaterial返回可用于在画布上渲染普通元素的默认材质。
GetETC1SupportedCanvasMaterial获取或生成 ETC1 材质。

Events

willRenderCanvases在即将开始 Canvas 渲染前调用的事件。

Inherited members

Variables

enabled启用的 Behaviour 可更新,禁用的 Behaviour 不可更新。
isActiveAndEnabledHas the Behaviour had active and enabled called?
gameObject此组件附加到的游戏对象。始终将组件附加到游戏对象。
tag此游戏对象的标签。
transform附加到此 GameObject 的 Transform。
hideFlagsShould the object be hidden, saved with the Scene or modifiable by the user?
name对象的名称。

Public Functions

BroadcastMessage调用此游戏对象或其任何子项中的每个 MonoBehaviour 上名为 methodName 的方法。
CompareTag此游戏对象是否使用 tag 进行了标记?
GetComponent如果游戏对象附加了类型为 type 的组件,则将其返回,否则返回 null。
GetComponentInChildren使用深度首次搜索返回 GameObject 或其任何子项中类型为 type 的组件。
GetComponentInParent返回 GameObject 或其任何父项中类型为 type 的组件。
GetComponents返回 GameObject 中类型为 type 的所有组件。
GetComponentsInChildren返回 GameObject 或其任何子项中类型为 type 的所有组件。
GetComponentsInParent返回 GameObject 或其任何父项中类型为 type 的所有组件。
SendMessage调用此游戏对象中的每个 MonoBehaviour 上名为 methodName 的方法。
SendMessageUpwards调用此游戏对象中的每个 MonoBehaviour 上或此行为的每个父级上名为 methodName 的方法。
GetInstanceID返回对象的实例 ID。
ToString返回 GameObject 的名称。

Static Functions

Destroy删除 GameObject、组件或资源。
DestroyImmediate立即销毁对象 /obj/。强烈建议您改用 Destroy。
DontDestroyOnLoadDo not destroy the target Object when loading a new Scene.
FindObjectOfType返回第一个类型为 type 的已加载的激活对象。
FindObjectsOfType返回所有类型为 type 的已加载的激活对象的列表。
Instantiate克隆 original 对象并返回克隆对象。

Operators

bool该对象是否存在?
operator !=比较两个对象是否引用不同的对象。
operator ==比较两个对象引用,判断它们是否引用同一个对象。