• HideFlag隐藏标识


    前言

    如何让一个Gameobject的属性在运行时,不可以在属性面板上手动的修改呢?

    文档:http://www.ceeger.com/Script/Enumerations/HideFlags/HideFlags.html

    测试环境:Unity 5.3.6f1 (windows x64)

    经测试HideFlag对gameobject和自定义都有效,因为此属性是UnityEngine.Object的,而MonoBehaviour的上层也是继承于此,所以只要你的脚本直接或间接地继承MonoBehaviour都是可行的。

    关系图:UnityEngine.Object->Component->Behaviour->MonoBehaviour

    Gameobject不可编辑

    测试代码

    public class HideFlagTest : MonoBehaviour
    {
        // Use this for initialization
        void Start()
        {
            //整个gameobject的属性面板不可编辑
            gameObject.hideFlags = HideFlags.NotEditable;
        }
    }

    测试效果

    gameobject的整个属性面板都不可编辑

    image

    脚本或自带组件不可编辑

    测试代码

    public class HideFlagTest : MonoBehaviour
    {
        public int speed = 10;
        public string desc = "test";
        public GameObject target;
    
        // Use this for initialization
        void Start()
        {
            gameObject.GetComponent<Camera>().hideFlags =  HideFlags.NotEditable;
            //仅仅是某个脚本的属性面板不可编辑
            gameObject.GetComponent<HideFlagTest>().hideFlags = HideFlags.NotEditable;
        }
    }

    测试效果

    Camera组件和自定义的脚本不可编辑

    image

  • 相关阅读:
    ccf I’m stuck!
    ccf 最大的矩形
    ccf ISBN号码
    ccf 出现次数最多的数
    ccf 相反数
    BestCoder Round #33
    15年3月CCF真题5-最小花费
    15年3月CCF真题4-网络延时
    15年3月CCF真题3-节日
    15年3月CCF真题2-数字排序
  • 原文地址:https://www.cnblogs.com/zhaoqingqing/p/6100499.html
Copyright © 2020-2023  润新知