CCMenuItem не работает (Xcode 7.3~)

Я японский разработчик игр. Я разрабатываю некоторые игры с помощью cocos2d-x.

Меня смущает следующая проблема. Итак, если у вас есть какие-либо идеи, пожалуйста, помогите мне.

При нажатии на кнопку, помещенную на слой cocos2d-x, кнопка не работает. Если кнопка нажата, функция обратного вызова кнопки не вызывается. Я нашел некоторые обходные пути проблемы. Однако я понятия не имею, почему возникает проблема. И, я хочу наиболее подходящий способ, как это исправить.

Ниже приведены среда разработки и мобильные устройства, на которых возникает проблема.

■ Среда разработки

  • Операционная система: Mac OS X El Capitan (10.11.5)
  • Версия Xcode: 7.3 - 7.3.1 (7D1014)
  • версия cocos2d-x: cocos2d-x-3.2
  • построить конфиг. : Тест/Выпуск

■ Мобильные устройства

  • iPhone4s (iOS 9.3.2), iPhone5 (iOS 9.3), iPad mini (iOS 9.3.1)

Если состояние мобильного устройства (версия iOS и т. д.) отличается, проблема может не возникнуть.

И приложения, созданные с помощью Xcode 7.2.1 или более ранней версии, не имеют проблем. он работает нормально. Проблема также не возникает с приложениями, созданными в режиме сборки отладки.

Прикрепляю пример кода.

https://github.com/SeanIchikawa/SampleProject/tree/master/CCBTest< /а>

Кнопка слоя сделана ccbi (ccbi = файл построителя cocos). На функцию обратного вызова ссылается кнопка «Селектор» в файле ccbi.

■ О примере проекта Xcode

  • Название проекта Xcode: CCBTest
  • файл ccbi: Resources/simple.ccbi
  • Файл класса (написано о слое): Classes/SimpleView.h

Если у вас есть какие-либо идеи, пожалуйста, дайте мне.

Спасибо, что прочитали мой вопрос.


person Sean    schedule 27.05.2016    source источник


Ответы (2)


Единственный способ, который я нашел на данный момент, чтобы обойти это, - это понизить Xcode до 7.2.1, имея точно такую ​​​​же проблему, но вместо этого с CCButton.

Старые версии Xcode можно загрузить отсюда: https://developer.apple.com/downloads/

person Enric Verdaguer    schedule 30.05.2016
comment
› Энрик Спасибо за ответ! Я знаю, как понизить версию Xcode. Сейчас я разрабатываю на Xcode 7.2.1, потому что не решаю проблему. Я хочу решить проблему с этого момента, потому что в будущем мне нужно будет обновить версию Xcode. Большое спасибо. - person Sean; 31.05.2016

Эта проблема возникает, только если вы ориентируетесь на 32-bit architecture устройство с -Os оптимизацией.

Установите оптимизацию на -O1 в вашей сборке релиза, чтобы пока обойти эту проблему.

person jayatubi    schedule 01.06.2016
comment
› jayatubi Спасибо за ответ! Я изменил настройки оптимизации, которые вы говорите. Однако возникла проблема. Большое спасибо. - person Sean; 03.06.2016