我没验证啊!~~~~~

原文请戳:搞清楚脚本中这些函数的调用规律

关于游戏中游戏对象是否处于active或者脚本是否为enabled 时 Start和Awake函数的调用
基本上可以有四种情况:
1.game object 为active 但是脚本为disabled
此时当对象被创建时只有Awake函数会被立刻调用,OnEnable和 Start 会在Enabled脚本后调用。
2.game object 为deactive但是脚本为enabled
此时当对象被创建时不会有函数被调用,当active物体之后会按照Awake OnEnable Start 顺序调用函数。
3.game object 为avtive且脚本为enabled
此时当对象被创建时会按照Awake OnEnable Start顺序执行函数。
4.game object 为deactive且脚本为disabled
此时创建对象不会有函数调用,当active物体之后Awake函数会立即调用,enabled脚本后OnEnable和Start会接着被调用。
 
需要注意的是Awake和Start在一个游戏物体的生命周期中只调用一次,但是OnEnable会在每次激活脚本的时候再次执行。
如在游戏中先创建一个物体,激活其脚本,则此时Awake OnEnable Start 会调用,将一个脚本的enabled设为false则其OnDisable会被调用
,再次激活时OnEnable又会被调用可Awake 和 Start 则不会再调用。注意将一个游戏对象SetActive(false)时其绑定的脚本以及子脚本中的OnDisable也
会被调用,SetActive(true)时会调用OnEnable。这可以解释为什么在为一个游戏对象订阅和移除事件委托时要分别在其OnEnable和 OnDisable OnDestroy中编写代码了
, 以前还真没看懂这点。

【转】搞清楚脚本中这些函数的调用规律相关推荐

  1. Shell脚本中的函数、数组

    Shell脚本中的函数 Shell脚本中的数组 转载于:https://blog.51cto.com/13515599/2107416

  2. Unity+C#开发笔记(七)| unity中继承MonoBehaviour类的脚本里的函数怎么调用 | ╭(●`∀´●)╯╰(●’◡’●)╮

    继上文,有个蠢货单例模式只是用来引用,突然遇到了一个继承了MonoBehaviour的类,然后unity跟你讲:不!你不可以在我这里这么用! 啊这--吓得我当场百度... ************** ...

  3. matlab 脚本是什么意思,MATLAB提示不能在脚本中定义函数,是什么意思?

    点击查看MATLAB提示不能在脚本中定义函数,是什么意思?具体信息 答:你试图在命令窗口定义函数,这种做法是错误的. 你需要建立一个.m文件,文件名是Chebyshev.m,然后在里面输入源程序. 答 ...

  4. python如何调用dll库中的函数_Python调用dll库接口-ctypes方法

    背景 最近需要用python写个脚本程序(win10 环境),需要调用现成的dll库完成这项任务,对于一直在Linux平台上开发程序的本人来说,从没有过使用dll的经历(不得不说还是so大法好),遇到 ...

  5. 【Python——类】 同一个类中一个函数里调用另一个函数的方法

    [Python-类] 同一个类中一个函数里调用另一个函数的方法 class Solution:def a(self):self.b() # 注意这种写法:self.类名def b(self):prin ...

  6. qt5调用python脚本 两次失败_Qt5调用Python脚本中的函数

    我有一个简单的Qt5项目,有一个按钮和一个文本字段,我也在项目中创建了一个py文件来检查如何从Qt调用python文件中的函数.在 虽然现在我卡住了:我有我的测试cpp.h和测试cpp.cpp,其中我 ...

  7. 虚幻4蓝图脚本中,函数,事件,宏的区别

    函数,事件,宏的区别 语法上的区别 执行引脚: 返回值 延迟节点 允许访问范围 逻辑区别 总结 语法上的区别 执行引脚: 调用函数和发射事件只能有一个执行引脚,而宏在调用的时候可以有很多执行引脚进入或 ...

  8. DllMain中不当操作导致死锁问题的分析--进程对DllMain函数的调用规律的研究和分析

    不知道大家是否思考过一个过程:系统试图运行我们写的程序,它是怎么知道程序起始位置的?很多同学想到,我们在编写程序时有个函数,类似Main这样的名字.是的!这就是系统给我们提供的控制程序最开始的地方(注 ...

  9. python调用js库中的函数_Python 调用JS文件中的函数

    Python 调用JS文件中的函数 1.安装PyExecJS第三方库 2.导入库:import execjs 3.调用JS文件中的方法 Passwd = execjs.compile(open(r&q ...

  10. c++和c语言中的函数相互调用的问题

    1.如何C++程序要调用 已编译后的C函数,该怎么办? (1)假设某个C函数的声明如下: void foo(int x, int y); 该函数被C编译器编译后在库中的名字为_foo,而C++编译器则 ...

最新文章

  1. SharePoint SiteCollection 和SubWeb之间的迁移
  2. golang微服务框架对比_微服务里程碑,Golang与Spring Cloud Alibaba完美结合
  3. HNOI2019游记
  4. 庆祝开博第一天!呵呵!
  5. fme中oracle转shp,FME中CASS扩展属性转SHP的方法
  6. python网页交互引擎_【Kivy Python UI 框架】模板化交互界面引擎
  7. Sharepoint学习笔记---Linq to Sharepoint--查询语法
  8. Android通过广播实现强制下线功能
  9. 大屏监控系统实战(16)-项目拾遗
  10. servletContextListener定时任务使用
  11. ORB-SLMA3的学习笔记
  12. Angular自定义管道(过滤器)方法
  13. 嵌入式系统开发-麦子学院(1)——前言
  14. 没有基础怎么学习PLC编程?
  15. 视频加密能做到完全防止外传播吗?
  16. matlab subs函数
  17. Openbravo中文使用手册
  18. 测试员如何面对30岁后的下坡路,伤不起的年龄,职业道路何去何从?
  19. 开源软件 商业软件_如何销售开源软件
  20. Python Flask框架-开发简单博客-项目布局、应用设置

热门文章

  1. anaconda简单解决PackagesNotFoundError: The following packages are not available from current channels:
  2. emui内核支持kvm吗_EMUI和MIUI为什么不基于安卓linux内核不使用虚拟机直接用c++开发一些更流畅系统自带软件呢?...
  3. 锁相环环路滤波器计算公式_锁相环和射频振荡器简介
  4. CNN 卷积神经网络结构转载
  5. 初探Windows用户态调试机制
  6. PHP超级全局变量、魔术变量和魔术函数
  7. eclipse中自动生成javadoc文档的方法
  8. 当有多个click事件时的简易做法
  9. QT正则表达式截取字符串末尾数字
  10. thinkphp 一个文件怎么调用另一个文件中的define()_ThinkPHP 简易开发思路 amp;amp; MVC和URL跳转...