Getting actual view size in Swift / IOS
<p>Even after reading several posts in frame vs view I still cannot get this working. I open Xcode (7.3), create a new game project for IOS. On the default scene file, right after addChild, I add the following code:</p>

<pre><code>    print(self.view!.bounds.width)
    print(self.view!.bounds.height)

    print(self.frame.size.width)
    print(self.frame.size.height)

    print(UIScreen.mainScreen().bounds.size.width)
    print(UIScreen.mainScreen().bounds.size.height)
</code></pre>

<p>I get following results when I run it for iPhone 6s:</p>

<pre><code> 667.0
 375.0
 1024.0
 768.0
 667.0
 375.0
</code></pre>

<p>I can guess that first two numbers are Retina Pixel size at x2. I am trying to understand why frame size reports 1024x768 ?</p>

<p>Then I add following code to resize a simple background image to fill the screen:</p>

<pre><code>    self.anchorPoint = CGPointMake(0.5,0.5)

    let theTexture = SKTexture(imageNamed: "intro_screen_phone")
    let theSizeFromBounds = CGSizeMake(self.view!.bounds.width, self.view!.bounds.height)
    let theImage = SKSpriteNode(texture: theTexture, color: SKColor.clearColor(), size: theSizeFromBounds)
</code></pre>

<p>I get an image smaller than the screen size. Image is displayed even smaller if I choose landscape mode.</p>

<p>I tried multiplying bounds width/height with two, hoping to get actual screen size but then the image gets too big. I also tried frame size which makes the image slightly bigger than the screen.</p>

<p>Main reason for my confusion, besides lack of knowledge is the fact that I've seen this exact example on a lesson working perfectly. Either I am missing something obvious or ?</p>