luanshils 发表于 2020-5-1 11:26

请教下unity的是怎么看物体自己是否开启

我想看指定物体自己的开启状态,但是网上说的activeh什么来着,我在vs里就用不了啊,
所以来问一下各位,到底是用的什么方法去检测物体自身(不含父物体)的开启状态。
在发帖之前我在百度找了许久,也没找到合适的解决方法

UnitySir 发表于 2020-5-1 11:54

            if(gameObject.activeSelf == true)//物体激活,为false物体失活

UnitySir 发表于 2020-5-1 11:57

vs用不了??你继承 Mono类没?

luanshils 发表于 2020-5-1 11:57

本帖最后由 luanshils 于 2020-5-1 11:59 编辑

UnitySir 发表于 2020-5-1 11:57
vs用不了??你继承 Mono类没?
嘶~,继承了

      if (this.gameObject.activeSelf==true)
            Debug.Log("激活");
      else
            Debug.Log("未激活");

然后现在的问题是,无论我取消勾选与否,都是显示激活

UnitySir 发表于 2020-5-1 12:00

luanshils 发表于 2020-5-1 11:57
嘶~,继承了

      if (this.gameObject.activeSelf==true)


现在还不能用??

luanshils 发表于 2020-5-1 12:01

本帖最后由 luanshils 于 2020-5-1 12:02 编辑

UnitySir 发表于 2020-5-1 12:00
现在还不能用??
没啥反应,用是能用




这个框,选不选都一样

UnitySir 发表于 2020-5-1 12:17

luanshils 发表于 2020-5-1 11:57
嘶~,继承了

      if (this.gameObject.activeSelf==true)


private void Update()
      {
            if (gameObject.activeSelf)
                Debug.Log("激活");

      }

      private void OnDisable()
      {
            Debug.Log("失活!");
      }

UnitySir 发表于 2020-5-1 12:19

UnitySir 发表于 2020-5-1 12:17
private void Update()
      {
            if (gameObject.activeSelf)


这两个都是 unity的生命周期函数,OnDisable()是 [物体失活是应该做什么]

UnitySir 发表于 2020-5-1 12:28

void OnDisable()
    {
      Debug.Log("PrintOnDisable: script was disabled");
    }

    void OnEnable()
    {
      Debug.Log("PrintOnEnable: script was enabled");
    }

这两个也可以用

luanshils 发表于 2020-5-1 12:35

UnitySir 发表于 2020-5-1 12:28
void OnDisable()
    {
      Debug.Log("PrintOnDisable: script was disa ...

没有别的方法了吗
页: [1]
查看完整版本: 请教下unity的是怎么看物体自己是否开启