2013-10-15 3 views
3

Я пытаюсь выполнение проектно простого перехода между сценами перекрестной регулировкой в ​​моем спрайтах комплекта проект со следующим кодом:SpriteKit crossFadeWithDuration: между сценами не работает, как ожидалось

SKTransition *crossFade = [SKTransition crossFadeWithDuration:1.0f]; 
[self.view presentScene:game transition: crossFade]; 

от метода моей главной сцены.

Вот что происходит:

  1. Игра сцена появляется сразу над текущей сценой.
  2. Игровая сцена исчезает через 1 секунду, раскрывая основную текущую сцену.
  3. Игровая сцена мгновенно появляется над текущей сценой.

И вот что я ожидал случиться:

  1. Игра сцена исчезает в течение основной текущей сцены

я проверил это и в других проектах (например, this one) и я получить такое же поведение.

Является ли переход на работу по назначению или я делаю что-то неправильно?

+0

Если вы зарегистрируете свойство 'scene' в представлении перед вызовом' presentScene: transition: ', вы получите распечатку текущей сцены? –

+0

Я получаю тот же эффект (заменил один из моих существующих переходов сцены с перекрестным затуханием), это, кажется, ошибка. Вы должны сообщить об этом как об ошибке для яблока с простым тестовым проектом: https://bugreport.apple.com – LearnCocos2D

+0

@Guy Kogus Я еще не пытался, я постараюсь как можно скорее, но что я должен ожидать от этого? – membersheep

ответ

1

У меня была очень похожая проблема. Используйте точку останова и убедитесь, что вы вызываете ее только один раз. Если он находится в функции обновления или что-то подобное, его можно вызвать дважды. Если он вызван только один раз, проверьте код в Сцене, в которую вы переходите. Вы не можете его правильно инициализировать и/или вызвать презентацию предыдущей сцены.

+2

Я думаю, что это определенно ошибка, так как она встречается в разных проектах разных людей. Я уже проверил свой код, спасибо в любом случае! – membersheep

+0

Решил это для меня. Благодаря! –

Смежные вопросы