Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.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 在iPhone 6/6plus中,SKScene中的标签未完全左对齐_Ios_Swift_Sprite Kit_Skscene - Fatal编程技术网

Ios 在iPhone 6/6plus中,SKScene中的标签未完全左对齐

Ios 在iPhone 6/6plus中,SKScene中的标签未完全左对齐,ios,swift,sprite-kit,skscene,Ios,Swift,Sprite Kit,Skscene,我正在努力确保标签始终显示在屏幕的左上角,而不管是什么设备 这是我的密码: override func didMoveToView(view: SKView) { var screenSize = UIScreen.mainScreen().bounds var screenWidth = screenSize.width var screenHeight = screenSize.height self.scaleMode

我正在努力确保标签始终显示在屏幕的左上角,而不管是什么设备

这是我的密码:

override func didMoveToView(view: SKView) {

        var screenSize = UIScreen.mainScreen().bounds
        var screenWidth = screenSize.width
        var screenHeight = screenSize.height


        self.scaleMode = SKSceneScaleMode.AspectFit;
        self.backgroundColor = SKColor.blackColor()
        gameScore = SKLabelNode(fontNamed: "Chalkduster")
        gameScore.text = "Score: 0"
        gameScore.position = CGPointMake(0, self.frame.size.height)
        gameScore.horizontalAlignmentMode = .Left
        gameScore.verticalAlignmentMode = .Top
        gameScore.fontSize = 48
        gameScore.zPosition = 1
        addChild(gameScore)


    }
在所有iPad系列设备上,它都完美地显示在左侧,但在iPhone 6和6+上,它显示为向右侧缩进约1/2英寸

你知道为什么会这样吗


谢谢

我想回答这个问题,以防像我这样的初学者陷入困境! 请务必阅读纵横比和缩放模式

我有:

self.scaleMode = SKSceneScaleMode.AspectFit;
但它应该是:

 self.scaleMode = SKSceneScaleMode.Fill;

从技术上讲,您也不需要,您正在将场景大小设置为视图大小,因此您需要
self.scaleMode=.ResizeFill否则,在应用自动约束之前,场景大小将等于视图大小(这就是为什么它在iPad和iPhone上看起来不同)。使用“调整大小填充”(Resize Fill)时,场景总是与视图的大小相同,因此您不必担心