ios - 在 SKScene 上运行 SKTransition 会破坏原始 SKScene 吗?

标签 ios ios7 sprite-kit

在 SKScene 上运行 SKTransition 会破坏原始 SKScene 吗?

例如:

 SKTransition *reveal = [SKTransition revealWithDirection:SKTransitionDirectionDown duration:1.0];
    GameConfigScene *newScene = [[GameConfigScene alloc] initWithSize: CGSizeMake(1024,768)]];
//  Optionally, insert code to configure the new scene.
    [self.scene.view presentScene: newScene transition: reveal];

执行transition时会不会销毁当前场景?还是还在内存中?新场景是否引用了旧场景?

最佳答案

假设你的 scene 属性是这样的 @property(weak) SKScene *scene; 那么答案是肯定的,当你呈现另一个场景或从堆栈中弹出它。
如果你有像 @property(strong) SKScene *scene 这样的属性,那么答案是否定的,你的场景将保留在内存中直到你这样做 self.scene = nil;
但请记住,SKView 会重新显示呈现的场景,因此您应该在应用中的某处将其置零以避免保留周期(当您具有 strong 属性时)。

关于ios - 在 SKScene 上运行 SKTransition 会破坏原始 SKScene 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21879747/

相关文章:

ios - 为什么我只在某些时候编译时出现 'unknown type name DetailViewController' 错误?

ios - Xcode 7 和基于 swift 的框架

ios - ios中使用Touch ID的不同指纹

collections - 如何检测 Sprite 套件中的碰撞?

ios - xcode 8 beta 4 中的 GKBehaviour 使 gkagent 位置变得疯狂

ios - SceneKit 场景大小不正确

ios - UITableViewCell.imageView 给出内存警告?

php - 发布数据以从 IOS 中的 SQL 查询检索信息

ios - iOS 6/7 中的 "no index path for table cell being reused"消息是什么意思?

ios - 分配给 'NSArray' 到 'NSString' 的不兼容指针类型