我将Sprite节点放置在屏幕顶部,且Sprite之间的距离相等/接近相等,这确实让我很艰难。精灵显示,但我不知道如何以使其在所有iDevices(iPad除外)上均可使用的方式对其进行编码。请帮忙 :)

SKTexture *ure = [SKTexture textureWithImageNamed:@"enemy"];
SKSpriteNode *temp = [[SKSpriteNode alloc] initWithTexture:ure color:nil size:CGSizeMake(400, ure.size.height)];
CGPoint pos = CGPointMake(70,50);
[temp setPosition: [self convertPointFromView:pos]];
temp.physicsBody.affectedByGravity = NO;
[self addChild:temp];


SKTexture *ure2 = [SKTexture textureWithImageNamed:@"enemy"];
SKSpriteNode *temp2 = [[SKSpriteNode alloc] initWithTexture:ure color:nil size:CGSizeMake(400, ure2.size.height)];
CGPoint pos2 = CGPointMake(170,50);
[temp2 setPosition: [self convertPointFromView:pos2]];
temp2.physicsBody.affectedByGravity = NO;
[self addChild:temp2];


SKTexture *ure3 = [SKTexture textureWithImageNamed:@"enemy"];
SKSpriteNode *temp3 = [[SKSpriteNode alloc] initWithTexture:ure color:nil size:CGSizeMake(400, ure3.size.height)];
CGPoint pos3 = CGPointMake(270,50);
[temp3 setPosition: [self convertPointFromView:pos3]];
temp3.physicsBody.affectedByGravity = NO;
[self addChild:temp3];

最佳答案

SKTexture *ure = [SKTexture textureWithImageNamed:@"enemy"];
    SKSpriteNode *temp = [[SKSpriteNode alloc] initWithTexture:ure color:nil size:CGSizeMake(self.size.width/10, ure.size.height)];//self.size.width/10 for example.
    CGPoint pos = CGPointMake(self.size.width/2 + pos.frame.size.width, self.size.height - pos.frame.size.height);
    [temp setPosition: [self convertPointFromView:pos]];
    temp.physicsBody.affectedByGravity = NO;
    [self addChild:temp];


    SKTexture *ure2 = [SKTexture textureWithImageNamed:@"enemy"];
    SKSpriteNode *temp2 = [[SKSpriteNode alloc] initWithTexture:ure color:nil size:CGSizeMake(self.size.width/10, ure2.size.height)];
    CGPoint pos2 = CGPointMake(self.size.width/2, self.size.height - pos2.frame.size.height);
    [temp2 setPosition: [self convertPointFromView:pos2]];
    temp2.physicsBody.affectedByGravity = NO;
    [self addChild:temp2];


    SKTexture *ure3 = [SKTexture textureWithImageNamed:@"enemy"];
    SKSpriteNode *temp3 = [[SKSpriteNode alloc] initWithTexture:ure color:nil size:CGSizeMake(self.size.width/10, ure3.size.height)];
    CGPoint pos3 = CGPointMake(self.size.width/2 - pos3.frame.size.width, self.size.height - pos3.frame.size.height);;
    [temp3 setPosition: [self convertPointFromView:pos3]];
    temp3.physicsBody.affectedByGravity = NO;
    [self addChild:temp3];

关于ios - SKSpriteNode定位,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26077792/

10-09 13:23