MenuItem回调中Remove引发崩溃

当在MenuItem中Remove自身时引发崩溃,这个Bug产生的理由是在CCMenuItem的回调函数中有Remove CCMenuItem的行为,当点击时,Delete了CCMenuItem但是CCMenuItem之前委托了在TouchDispathcer与里面的动作不能被取消,如CCTouchEnd,然后CCTouchEnd回来回调CCMenuItem,但此时的CCMenuItem已经被Release掉了。所以就出现了Bug。
比较low的解决办法:
1.在MenuItem回调中先setVisible为false,再回调结束后Remove掉。
2.对于切换按钮“状态”的,可以通过CCMenuItemSprite的getNormalImage()和getSelectedImage()获取对应的精灵,setDisplayFrame()替换图片来达到效果。
MenuItem回调中Remove引发崩溃

相关文章:

  • 2021-09-22
  • 2022-12-23
  • 2022-12-23
  • 2021-07-18
  • 2022-12-23
  • 2021-08-16
  • 2022-12-23
猜你喜欢
  • 2021-12-04
  • 2021-07-20
  • 2022-12-23
  • 2021-06-15
  • 2022-12-23
  • 2021-11-18
相关资源
相似解决方案