MENU

【WidgetKit】サポートするWidgetのサイズを設定するには?

記事内に商品プロモーションが含まれる場合があります

何も指定しない場合、デフォルトでsystemSmall, systemMedium, systemLargeが設定されます。

特定のサイズだけ有効にしたい場合はsupportedFamiliesでサポートしたいウィジェットサイズを指定する必要があります。

struct SampleWidget: Widget {
    let kind: String = "SampleWidget"

    var body: some WidgetConfiguration {
        StaticConfiguration(kind: kind, provider: Provider()) { entry in
            if #available(iOS 17.0, *) {
                SampleLogWidgetEntryView(entry: entry)
                    .containerBackground(.fill.tertiary, for: .widget)
            } else {
                SampleWidgetEntryView(entry: entry)
                    .padding()
                    .background()             
            }
        }
        .configurationDisplayName("My Widget")
        .description("This is an example widget.")
        .supportedFamilies([.systemSmall, .systemMedium]) // 追加
    }
}
目次

SwiftUIが学べる書籍

Share

Comment

コメントする

目次