Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 不同屏幕尺寸的背景_Ios_Xcode_Swift_Sprite Kit_Game Physics - Fatal编程技术网

Ios 不同屏幕尺寸的背景

Ios 不同屏幕尺寸的背景,ios,xcode,swift,sprite-kit,game-physics,Ios,Xcode,Swift,Sprite Kit,Game Physics,我是SpriteKit开发的新手,我正在尝试开发我的第一款游戏 我已经使用视觉场景编辑器(GameSecene.sks)实现了一些边缘(以避免球从屏幕中跑出),并且我必须指定场景的大小(640x960)。 现在,使用代码,我想根据设备的宽度/高度更改背景(因为我不能限制为640x960) 因此,我需要使用: scene.scaleMode = SKSceneScaleMode.Fill 以拉伸不同设备的场景边缘 但是 我想背景是在规模模式1 那有可能吗 这是我用来为每个设备设置不同背景的代码:

我是SpriteKit开发的新手,我正在尝试开发我的第一款游戏

我已经使用视觉场景编辑器(GameSecene.sks)实现了一些边缘(以避免球从屏幕中跑出),并且我必须指定场景的大小(640x960)。 现在,使用代码,我想根据设备的宽度/高度更改背景(因为我不能限制为640x960)

因此,我需要使用:

scene.scaleMode = SKSceneScaleMode.Fill
以拉伸不同设备的场景边缘

但是

我想背景是在规模模式1

那有可能吗

这是我用来为每个设备设置不同背景的代码:

if(skView.bounds.width == 768.0) {

     var backgroundTexture = SKTexture(imageNamed: "bg_768.jpg")
     let background = SKSpriteNode(texture: backgroundTexture)
     background.size.width = skView.bounds.width
     background.size.height = skView.bounds.height
     background.position = CGPointMake(CGRectGetMidX(skView.frame), CGRectGetMidY(skView.frame))
     scene.addChild(background)


} else {
  //set others backgrounds
}
但是如果场景被拉伸,他们也会被拉伸。。! 有没有办法避免这种情况


谢谢大家!

简单地说,我希望场景和背景填满屏幕。可以使用scaleMode拉伸场景,但我不希望拉伸背景。您可以尝试在持有SKScene的视图控制器上设置背景,而不是使用SpriteKit创建它。@Skoua谢谢,我现在就试试如果您希望图像不缩放,那么您需要在运行时调整场景的大小,你不想扩大规模谢谢@Knight0fDragon