簡體   English   中英

如何在Swift Xcode中為所有設備在整個屏幕上邊框?

[英]How do I make a border around my whole screen for all the devices in Swift Xcode?

我有一個橫向的游戲,我需要在整個屏幕周圍加邊框,以使我的heroNode不能從四個側面的任何一個伸出屏幕。 我有此代碼,但它僅適用於iphone 5s,對於其他設備來說太小了。 我如何獲得代碼來調整尺寸和適合其他設備的屏幕? 謝謝!

        override func didMoveToView(view: SKView) {
    let borderBody = SKPhysicsBody(edgeLoopFromRect: CGRect(x: 20, y: -90, width: self.size.width-50, height: self.size.height))
    borderBody.categoryBitMask = borderbodycategory
    borderBody.collisionBitMask = HeroCategory
    borderBody.contactTestBitMask = HeroCategory
    borderBody.allowsRotation = false
    borderBody.affectedByGravity = false
    self.physicsBody = borderBody

    }
self.physicsBody = SKPhysicsBody (edgeLoopFromRect: self.frame)

這為您的“世界”提供了一個物理體,是一個邊緣,一個環,即“世界”框架的大小。

不要使用固定的寬度值,而要使用百分比值,以便它隨屏幕尺寸縮放。

您可以使用UIScreen的屬性代替固定值。

let width = UIScreen.mainScreen().bounds.size.width - 50
let height = UIScreen.mainScreen().bounds.size.height - 50
let borderBody = SKPhysicsBody(edgeLoopFromRect: CGRect(x: 20, y: -90, width: width, height: height))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM