下面的代码显示SKView
,直到将skHeight
更改为2050或更高的值(例如5000)为止。
1)如何使SKView
出现在2050或5000的高度上?
2)SKViews
的最大大小是多少?
要复制:
1)运行以下代码。您将看到SKView
表示为灰色窗口。
2)将skHeight
更改为2050或5000。SKView
不再显示。
class TestViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Create SKView
let skHeight = CGFloat(2050)
let skFrame = CGRect(x: 0, y: 0, width: 100, height: skHeight)
let skView = SKView(frame: skFrame)
skView.backgroundColor = UIColor.red
// Add test view to <scrollView>
view.addSubview(skView)
}
}
答案 0 :(得分:1)
在许多设备上,OpenGL渲染不支持大于4096x4096的画布大小,您的视图为2050x2050,因此,在视网膜模式下,它的大小实际上为4100x4100。
@ 3x设备现在变得更加疯狂,因为它需要处理硬件的缩放和缩小,因此最终只能获得约1501x1501的视图。
金属没有此问题,从iOS 12开始,不推荐使用OpenGL,因此希望模拟器也将使用金属。 (这应该是因为Mojave仅支持金属设备)