2014-09-27 4 views
2

У меня очень трудное время с позиционированием моих спрайт-узлов в верхней части экрана с равным/близким к равному пространству между спрайтами. Спрайты показывают, но я не знаю, как закодировать его так, чтобы он работал на всех iDevices (кроме iPads). Пожалуйста, помогите :)Позиционирование SKSpriteNode

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]; 
+0

Как сделать это правильно, эффективно и сделать его работу? – youngtunechi

ответ

1
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]; 
Смежные вопросы