2015-07-21 55 views
0

我有一个用于屏幕底部和顶部的physicsBody。它非常适合我的iPhone,但是当我进入iPad模拟器时,它离屏幕顶部和屏幕底部几英寸。出于某种原因,它不适合iPad屏幕的边缘。有人可以帮我弄这个吗?谢谢!继承人代码即时通讯使用:为什么我的顶部和底部物理机构为iPad调整大小?

let wall1 = SKSpriteNode(color: SKColor.clearColor(), size: CGSize(width: 2000, height: 5)) 
let wall2 = SKSpriteNode(color: SKColor.clearColor(), size: CGSize(width: 2000, height: 5)) 


    func wall() { 


    //top wall border 
    wall1.position = CGPointMake(self.frame.width/2, self.size.height/1.1) 
    wall1.physicsBody = SKPhysicsBody(rectangleOfSize: wall1.size) 
    wall1.physicsBody!.dynamic = false 
    wall1.physicsBody!.categoryBitMask = SideBlockCategory 
    wall1.physicsBody!.restitution = 0 
    wall1.physicsBody?.contactTestBitMask = HeroCategory 
    wall1.physicsBody?.collisionBitMask = 0 
    wall1.physicsBody?.usesPreciseCollisionDetection = true 


    //bottom wall border 
    wall2.position = CGPointMake(self.frame.width/2, self.size.height/8.0) 
    wall2.physicsBody = SKPhysicsBody(rectangleOfSize: wall2.size) 
    wall2.physicsBody!.dynamic = false 
    wall2.physicsBody!.categoryBitMask = SideBlockCategory 
    wall2.physicsBody!.restitution = 0 
    wall2.physicsBody?.contactTestBitMask = HeroCategory 
    wall2.physicsBody?.collisionBitMask = 0 
    wall2.physicsBody?.usesPreciseCollisionDetection = true 


    } 

回答

0

试试这个;

//top wall border 
wall1.position = CGPointMake(self.frame.width/2, self.frame.height - 2.5) 

//bottom wall border 
wall2.position = CGPointMake(self.frame.width/2, 2.5) 
+0

好吧让我看看它是否有效。 – coding22

+0

这适用于iPad,但对于iPhone而言,边框会略微偏离屏幕,而不是与屏幕边缘对齐。 – coding22

+0

记录self.frame.height或self.frame.height以查看您是否获得正确的解析度。 – Shoaib

相关问题