如何在 SwiftUI 中应用大于底层视图的覆盖层

jch*_*tel 11 ios swift swiftui

我正在尝试创建一个比底层视图更大的覆盖层。

我尝试使用overlay()修改器来执行此操作,但似乎不允许覆盖层延伸超出底层视图的边界。

我意识到,通过将层次结构中的覆盖层拉到具有更大边界的包含视图并使用 a 是ZStack可行的,但这会破坏我想要的流程。我希望叠加层在创建它的较小视图中独立存在(有点像sheet()修改器的工作方式)。

这在 SwiftUI 中可能吗?

小智 -1

?

    Rectangle()
      .foregroundColor(.gray)
      .frame(width: 100)
      .overlay(
        Rectangle()
          .foregroundColor(.green)
          .frame(width: 200)
          .blendMode(.multiply)
      )
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述