中等小部件尺寸背景图像或颜色未填充整个空间

问题描述 投票:0回答:1

当尝试使用最小的 IOS 14 创建小部件时,背景颜色或图像拒绝填充侧面的小部件。 它适用于 containerBackground Modifier,但适用于 IOS 17 或更高版本。 我也看到了同样的question,但是由于某种原因,即使我复制了完全相同的代码,现在的答案仍然有效:

struct WidgetEntryView : View {
var entry: SomeEntry
var body: some View {
    VStack(alignment: .leading) {
        Spacer()
        Text("Aardvark Exactlywhat")
            .font(.largeTitle)
            .bold()
            .padding(.bottom, 20)
            .padding(.leading, 20)
            .padding(.trailing, 20)
            .minimumScaleFactor(0.5)
            .foregroundColor(.white)
            .shadow(
                color: Color.black,
                radius: 1.0,
                x: CGFloat(4),
                y: CGFloat(4))
    }
    .frame(maxWidth: .infinity, maxHeight: .infinity)   // << this one !!
    .edgesIgnoringSafeArea(.all)
    .background(
        backgroundImage()
            .resizable()
            .scaledToFill()
    )
}
ios swift swiftui widgetkit
1个回答
0
投票

解决方法是向图像添加负水平填充。

我测量的间隙为 16pt,但如果图像只是一个空间填充物,并且是否存在大量溢出并不重要,那么您可以将其放大以作为预防措施。

.background(
    backgroundImage()
        .resizable()
        .scaledToFill()
        .padding(.horizontal, -16)
)
© www.soinside.com 2019 - 2024. All rights reserved.