Xcode15での「sizeThatFits」について
Xcode14までは普通に動作していたはずの「sizeThatFits」が
Xcode15からは急に適用されななくなったみたいで色々調べたところ、
#Preview
Macroを利用している際には、「sizeThatFits」が使えないようでした。
その代わりにtrait
を付けて、.sizeThatFitsLayout
を書けば解決できるということで、実際に試してみることにしました。
sizeThatFits/sizeThatFitsLayoutについて
そもそもsizeThatFitsとsizeThatFitsLayoutというのは一体何でしょう?
基本的にsizeThatFitsというのは、ContainerをPreviewに合わせて、Viewのみのpreviewにするためのメソッドです。
レファランスから調べたところ、sizeThatFitsとsizeThatFitsLayoutは全く同じ機能であり、
sizeThatFitsLayoutの方がiOS17.0のリリースで導入されたみたいです。
コードへの適用
InfoView.swift
#Preview(traits: .sizeThatFitsLayout) {
InfoView(text: "Hello World!", imageName: "your image")
}
結果

上記画像の通り、正常に適用されていることが確認できました。