我正在创建一个手机游戏应用程序,并且在尝试使用代码时,我始终收到错误'CGRectGetMaxX'已由属性'CGRect.maxX'代替的错误:

if spaceship.position.x > CGRectGetMaxX(gameArea) - spaceship.size.width/2 {

    spaceship.position.x = CGRectGetMaxX(gameArea) - spaceship.size.width/2

}

关于如何解决此问题的任何想法...我知道它告诉我它已被替换,但是当我尝试使用新方法时它不起作用

谢谢!

最佳答案



那是你的问题。这不是方法,而是在CGRect上定义的属性,如错误所述:



因此,与其像这样调用它:

CGRect.maxX(gameArea)

您改为访问maxXgameArea属性,该属性的类型为CGRect:
gameArea.maxX

因此,您的代码变为:
if spaceship.position.x > gameArea.maxX - spaceship.size.width/2 {

    spaceship.position.x = gameArea.maxX - spaceship.size.width/2

}

10-08 17:45