Xcode 11 - Disable resize mode in catalyst swift
You can call this in your application:didFinishLaunchingWithOptions
method:
UIApplication.shared.connectedScenes.compactMap { $0 as? UIWindowScene }.forEach { windowScene in
windowScene.sizeRestrictions?.minimumSize = CGSize(width: 480, height: 640)
windowScene.sizeRestrictions?.maximumSize = CGSize(width: 480, height: 640)
}
Beta 5 added a sizeRestrictions
property to UIWindowScene.
If you set sizeRestrictions.maximumSize
and sizeRestrictions.minimumSize
to the same value, the window will not be resizable:
windowScene.sizeRestrictions?.minimumSize = CGSize(width: 640, height: 480)
windowScene.sizeRestrictions?.maximumSize = CGSize(width: 640, height: 480)
The easiest place to add this code is probably scene(_:willConnectTo:options:)
in your scene delegate. The scene
object passed in is a UIWindowScene
, so just cast it and then set sizeRestrictions
.
Note: sizeRestrictions
are only available in iOS 10.15 Beta 5. This code will crash in older betas.