美文网首页
设置Canvas的 overrideSorting不生效

设置Canvas的 overrideSorting不生效

作者: 不文不武的禾文 | 来源:发表于2020-05-24 22:02 被阅读0次

    当我想在游戏中的特效上添加Canvas并且修改overrideSorting时,发现虽然代码执行了,但是没有得到预期效果。

                  Canvas _canvas = m_princeEffectGo.AddComponent<Canvas>();
                  _canvas.overrideSorting = true;
    
    image.gif

    最后发现如果在Awake修改的话,不能修改成功,只能在Start 中修改。

    但之后我用我们项目的框架写了一个测试代码挂在UI上测试,不论是Awake还是Start都会执行。

    
    using UnityEngine;
    using YoukiaUnity.App;
    
    public class CanvasTest : MonoSwitch
    {
        public GameObject canvas;
        public override void OnAwake()
        {
            base.OnAwake();
            GameObject _go = Instantiate(canvas, transform);
            Canvas _canvas = _go.AddComponent<Canvas>();
            _canvas.overrideSorting = true;
        }
        protected override void Initialization()
        {
            base.Initialization();
            GameObject _go = Instantiate(canvas, transform);
            Canvas _canvas = _go.AddComponent<Canvas>();
            _canvas.overrideSorting = true;
        }
    }
    
    image.gif

    搞不动为什么在Awake中设置Canvas的 overrideSorting不生效!简单记录一下!

    相关文章

      网友评论

          本文标题:设置Canvas的 overrideSorting不生效

          本文链接:https://www.haomeiwen.com/subject/dhssahtx.html