SpriteKit - Действие с блоком завершения или нет?
Какой подход лучше?
Например, если я хочу добавить узел к сцене и воспроизвести некоторую анимацию, или запустить другой код, который я хочу выполнить сразу после добавления узла в сцену, но не раньше, что предпочтительнее сделать:
Это:
[scene addItem:item];
[item playAnimation];
[item runSomeTimeRelatedCode];
или запустить этот же код внутри действия с блоком завершения:
SKAction *action = [SKAction runBlock:^{
[scene addItem:item];
}];
[scene runAction:action completion:^{
[item playAnimation];
[item runSomeTimeRelatedCode];
}];
1 ответ
Решение
Второй фрагмент кода просто без необходимости задерживает выполнение и делает код более сложным для написания. Короче говоря, нет смысла его использовать.