我想设置一个非常简单的
accessoryCorner
SwiftUI 小部件,但它显示得很丑。
这是我的代码:
struct WidgetView: View {
@Environment(\.widgetFamily) var widgetFamily
var body: some View {
switch widgetFamily {
case .accessoryCorner:
Image(systemName: "cart")
.widgetLabel {
Text("Label")
}
default:
Text("?")
}
}
}
由于某种原因,图像(购物车)在接近白色的背景上以白色显示,即看不到。
我尝试了各种方法来设置更好的背景,例如
ZStack
与AccessoryWidgetBackground()
、background(Color.clear)
等,但都不起作用。
如何显示没有背景的图像,例如左上角的日期(DI)?
更新:
至此,问题已经解决了。
我从 Xcode 15.1 预览中得到了提示:
然后我修改了我的
WidgetConfiguration
如下:
var body: some WidgetConfiguration {
StaticConfiguration(kind: widgetKind, provider: Provider()) { entry in
if #available(iOS 17.0, watchOSApplicationExtension 10.0, *) {
WidgetView(entry: entry)
.containerBackground(.fill.tertiary, for: .widget)
} else {
WidgetView(entry: entry)
.padding()
.background()
}
}
并且附件角小部件是使用
创建的private func accessoryCorner(entry: Provider.Entry) -> some View {
entry.image
.modifier(ContainerBackground())
.font(.system(size: 20))
.widgetLabel {
Text"Some text")
}
}
小部件现已正确显示。
之前的回答:
我联系Apple并得到以下答复:
我们已审核您的请求并得出结论:不存在 给定当前支持的方式来实现所需的功能 运输系统配置。