📜  unity set parent canvas - C# (1)

📅  最后修改于: 2023-12-03 14:48:12.191000             🧑  作者: Mango

Unity Set Parent Canvas - C#

In Unity, the Canvas is used to render user interfaces for games and applications. Sometimes, we may want to change the parent Canvas of a UI element dynamically at runtime. This can be achieved in Unity using C# programming language.

Syntax

The transform.SetParent() method can be used to set the parent of a UI element. Here's the syntax:

public void SetParent(Transform parent, bool worldPositionStays = true);
  • parent: the new parent of the transform.
  • worldPositionStays: if true, the object keeps its world position, rotation and scale with respect to the new parent.
Example

Here's an example of how to set the parent Canvas of a UI element dynamically:

using UnityEngine;

public class SetParentExample : MonoBehaviour
{
    public Transform newParent;

    public void SetNewParent()
    {
        transform.SetParent(newParent);
    }
}

In this example, we define a public property newParent that represents the new parent Canvas we want to set. We also define a method SetNewParent() that can be called to change the parent Canvas of the UI element. Inside this method, we call the transform.SetParent() method with the new parent Canvas as the first argument.

Conclusion

In this article, we learned how to set the parent Canvas of a UI element dynamically using C# programming language in Unity. This can be useful when we want to change the hierarchy of UI elements at runtime depending on certain game conditions.