2014-10-27 132 views
0

我试图的图像(640X1136PX)添加作为背景的一个项目与以下代码:iOS应用背景图像

SKSpriteNode *background = [SKSpriteNode spriteNodeWithImageNamed:@"Background"]; 
background.position = CGPointMake(self.size.width * .5, self.size.height * .5); 
background.anchorPoint = CGPointZero; 
background.blendMode = SKBlendModeReplace; 
[self addChild:background]; 

利用上述码的背景图像被显示在左侧底部示出的几乎10%的图片,如果我评论以下

background.anchorPoint = CGPointZero; 

然后它显示图像居中,但没有覆盖30%的面积。 请帮助我,我对SpriteKit很新。

感谢

+0

你是否检查图片的大小。它适合屏幕尺寸吗? – Astoria 2014-10-27 11:13:17

+0

@Astoria是的,图片大小是640 X 1136 Px – Khan 2014-10-27 11:17:49

+0

最好的解决方案是定义场景大小'self.size = view.bounds.size' – Khan 2014-10-28 14:40:26

回答

0

尝试在你的场景一流这种方法。尝试保留默认值anchorPoint-属性。

- (void)constructBackground 
{ 
    self.scaleMode = SKSceneScaleModeAspectFill; 
    self.background.position = CGPointMake(CGRectGetMidX(self.frame), CGRectGetMidY(self.frame); 
    self.background.size = self.frame.size; 
} 
0

谢谢你对我的帮助,我得到固定的问题,我使用的Xcode 6.0.1和仿真器正在运行iOS8上,所以我们需要遵循图像约定每iOS8上,当我调整图像以高分辨率1242 X 2208 px问题解决了

@Astoria谢谢你的提示。