【问题标题】:SKAction repeatAction withKey and completion?SKAction repeatAction withKey 和完成?
【发布时间】:2015-03-22 22:43:40
【问题描述】:

我有一个 SKAction:
SKAction *myAction = [SKAction performSelector:@selector(methodA) onTarget:self];

我想在完成 50 次操作后调用 methodB 之前重复此操作 50 次。

[[self runAction:[SKAction repeatAction:myAction count:50]  
withKey:@"myActionKey"]   
 completion:^{
        [self methodB];
    }];

它给了我一个bad receiver type 'void' 错误。如果我取出withKey:@"myActionKey" 部分,错误就会消失,但我需要获取密钥,因为我可能需要在某个时候调用removeActionForKey:@"myActionKey"

有什么办法可以解决这个问题吗?

【问题讨论】:

    标签: objective-c sprite-kit skaction


    【解决方案1】:

    您要执行的命令不存在,但您可以这样做:

    SKAction *callMethodA = [SKAction runBlock:^{
        [self methodA];
    }];
    
    SKAction *myAction = [SKAction repeatAction:callMethodA count:50];
    
    SKAction *callMethodB = [SKAction runBlock:^{
        [self methodB];
    }];
    
    SKAction *sequence = [SKAction sequence:@[myAction, callMethodB]];
    
    [self runAction:sequence withKey:@"myKey"];
    

    【讨论】:

      猜你喜欢
      • 2014-03-17
      • 1970-01-01
      • 2018-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-14
      • 2018-01-28
      • 1970-01-01
      相关资源
      最近更新 更多