SpriteKit how to get correct screen size

匿名 (未验证) 提交于 2019-12-03 07:36:14

问题:

I've tried

self.frame.size self.view!.frame.size UIScreen.mainScreen().bounds.size 

None of them work.

How do I get the correct screen size for the device?

回答1:

You can use following swift code to get the screen size.

let displaySize: CGRect = UIScreen.mainScreen().bounds let displayWidth = displaySize.width let displayHeight = displaySize.height 


回答2:

You can use:

let deviceWidth = UIScreen.mainScreen().bounds.width let deviceHeight = UIScreen.mainScreen().bounds.height 

And if you need to get the ratio so you can detect what device they are using, you can use the following for portrait mode or switch it for landscape mode.

let maxAspectRatio: CGFloat = deviceHeight / deviceWidth 

You can then check what ratio the device is to determine certain things.

if maxAspectRatio == (4 / 3) {     //The ratio of an iphone 4S is 4:3     print("The user is using an iPhone 4S or iPod 4th Generation.") } else if maxAspectRatio >= 1.7 && maxAspectRatio <= 1.8 {     //The ratio of these devices is 16:9     print("The user is using an iPhone 5, 5S, 5C, 6, 6S, 6 Plus, 6S Plus, or iPod 5th Generation.) } else {     print("The user is using an iPad, iPad Mini, iPad Air, iPad Retina, or iPad Pro.") } 

If you want to get the correct view that the player can see, as in the bounding frame of the device's size, you can use the following guide.



标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!