gpt4 book ai didi

objective-c - self.frame 返回不同的值

转载 作者:行者123 更新时间:2023-11-30 10:19:48 25 4
gpt4 key购买 nike

我正在将代码从 Objective C 转换为 Swift。我正在使用 self.frame 来检测帧大小。我正在 iPhone 6 模拟器上进行测试。以下 objective-c 代码将 self.frame 返回为 0, 0, 375, 667。但是 swift 代码将 self.frame 返回为(0.0,0.0,1024.0,768.0)。是什么造成了这种差异?

CGFloat yDiv = CGRectGetMaxY(self.frame)/5.0;
NSLog(@"%@", NSStringFromCGRect(self.frame));

Objective C 代码日志 {{0, 0}, {375, 667}}

在 swift

 var yDiv:CGFloat = CGRectGetMaxY(self.frame)/5.0
println("\(self.frame)")

Swift 代码将 (0.0,0.0,1024.0,768.0) 打印到控制台。

最佳答案

发生上述情况是因为我使用的是 Xcode 附带的 iOS“游戏”模板。我必须更改 viewController 中的代码才能设置正确的边界

let scene:SKScene = GameScene.init(size: skView.bounds.size)

希望这对其他人有帮助。

关于objective-c - self.frame 返回不同的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27676621/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com