iOS 小部件始终在模拟器或设备上显示占位符

che*_*iok 5 ios widgetkit

我制作了一个非常基本的 iOS Widget 扩展(在 iOS 16 上):

struct TotoView: View 
    var body: some View {
        VStack {
            Text("Toto")
                .font(.headline)
        }
    }
} 

struct TotoWidget: Widget {
    var body: some WidgetConfiguration {
        IntentConfiguration(kind: "myKind", intent: ViewTodayIntent.self, provider: TimelineProvider()) { entry in
        TotoView(entry: entry)
    }
    .configurationDisplayName("Today work")
    .description("Show today work sessions")
    .supportedFamilies([.systemSmall, .systemMedium])
    }
}
Run Code Online (Sandbox Code Playgroud)

在 SwiftUI Canvas 预览中,我可以看到“Toto”文本。

在 SwiftUI 画布中

但是当我选择小部件目标并在模拟器中运行时,我只有占位符代替文本。知道为什么吗?请注意,不仅文本被占位符替换,而且图像(systemName:)

我认为这个问题似乎与 IntentConfiguration 有关(因为 StaticConfiguration 一切正常)

我使用的是 xCode 14。

在模拟器中

小智 3

就我而言,它有助于更​​改模拟器。在我的 iPhone 11 模拟器和真实 iPhone 11 上,该 Bug 仍然存在。

与其他模拟器一起使用效果很好。

可能是 iPhone 11 的问题。