Xcode15betaでウィジェットを確認した所、余白ができて表示が小さくなっていましたので解決方法をご紹介します。
(Small・Medium・Largeウィジェット共通)
ウィジェットのプレビュー画面比較
Xcode14:ウィジェットのプレビュー画面
Xcode15beta:ウィジェットのプレビュー画面
なんか変な余白ができている…
シミュレーターでの比較
実際にビルドしてみると余白が出来た分、ウィジェットの表示が小さくなっていた。
解消方法
どうやらiOS17の場合、変な余白ができるらしい。
なのでiOS17の場合は、余白を無効にする処理が必要。
https://developer.apple.com/documentation/swiftui/widgetconfiguration/contentmarginsdisabled()
各ウィジェットに共通で入れたいのでextensionで以下の処理を準備する。
extension WidgetConfiguration {
func contentMarginsDisabledIfAvailable() -> some WidgetConfiguration {
if #available(iOSApplicationExtension 17.0, *) {
return self.contentMarginsDisabled()
} else {
return self
}
}
}
Small・Medium・Largeのウィジェットに共通で追加する。
var body: some WidgetConfiguration {
.contentMarginsDisabledIfAvailable()
}