有時候遇到 Cocos 按鈕不能點擊,真的挺崩潰的?,F在就來總結一下可能的原因:(各種亂七八糟的原因,多的是你不知道的事)
- Cocos Studio 組件沒開交互(新手老鳥都會踩的坑,稍不注意就進坑了);
- 層級關系(設置 localZOrder 即可解決);
- 點擊事件被吞噬;
- 沒有調用點擊事件的處理(此時不是沒有響應,是響應了沒有預料中的操作);
- 在父類反復添加(添加之前先 removeFromParent,這個有時候會很坑,按理說反復添加會報錯,但是有時候只是添加同一個父類,點擊事件也會不響應,原因目前正在找。。。);
- 沒有實現父類的 touch 注冊【一般是 onEnter 和 onExit】(一般只有自己封裝過父類才會出現這種情況)
- Button 的內容寬和高都為0,即按鈕根本沒有點擊區域。(這個不太好找)
以上就是可能的原因了,以后如果再遇到,再添加吧。。。
好了,基本總結就是沒有點擊事件的響應,先排查編輯器那邊有沒有開交互,Button 寬高是否為0,如果是編輯器綁定事件,就查看回調名是否正確,讓你后再看回調是否被斷到;然后再看代碼,因為沒有響應點擊事件,所以斷點基本沒用,因此
可以檢查是否是原因 3。
OK了,這個坑,給自己當個備忘錄,實時更新 ing。