在Cocos Creator游戲開發中,組件是使用是非常頻繁,對于組件的入口函數、常用屬性、組件的操作等,必須做到非常熟悉。點擊鏈接加入群聊【Unity/Cocos交流群】
一、 組件入口函數
1: : 組件加載的時候調用, 保證了你可以獲取到場景中的其他節點,以及節點關聯的資源數據
2: start: 也就是第一次執行 update 之前觸發
3: update(dt):組件每次刷新的時候調用,距離上一次刷新的時間(會在所有畫面更新前執行)
4: lateUpdate(dt) 刷新完后調用(會在所有畫面更新后執行);
5: onEnable: 啟用這個組件的時候調用;
6: onDisable: 禁用這個組件的時候調用;
7: onDestroy: 組件實例銷毀的時候調用;
二、 cc.Component屬性
1: 組件類: 所有組件的基類;
2: node: 指向這個組件實例所掛載的這個節點(cc.Node);
3: name: 這個組件實例所掛載的節點的名字<組件的名字>;
4: properties: { } 屬性列表;
(1) name: value, 數,bool, 字符串;
(2) 位置,顏色, 大小: cc.v2(0, 0), cc.color(0, 0), cc.size(100, 100)
(3) 組件: {
type: 組件類型, 系統類型,也可以require自己編寫的組件類型
default: null or []
}
(4)其他: 打開cocos creator源碼,找到參考,然后移動到代碼里面;
三、 組件添加查找刪除
1: addComponent(組件的類型): 向節點上添加一個組件實例, 返回添加好的組件實例;
2: getComponent(組件類型): 查找一個為指定類型的組件實例(如果有多個,第一個匹配);
3: getComponents(組件類型): 查找這個節點上所有這個類型的組件實例;
[inst1, inst2, inst3, ...]
4: getComponentInChildren(組件類型): 在自己與孩子節點里面查找;
5: getComponentsInChildren (組件類型): 在自己與孩子節點里面查找;
6: destroy(): 從節點中刪除這個組件的實例;
四、 Shedule定時器操作
1: sheduleOnce(函數, time): time秒后啟動一次定時器;
2: schedule(函數, time, 次數, 多長時間后開始); 執行的次數為(次數 + 1), cc.macro.REPEAT_FOREVER
3: unschedule(函數); // 取消這個定時器操作;
5: unscheduleAllCallbacks 取消所有的定時器操作;
注意,如果節點或組件沒有激活是不會調用的;