即使矩形在SwiftUI中调整了大小,如何将点转换为矩形的点?

时间:2019-11-27 01:16:31

标签: swift swiftui

在下面的图像中,我希望黑色的小矩形覆盖右上方的绿色心形按钮。当主图像的尺寸更改时,黑色矩形应调整大小并覆盖心脏图像。

如何使用SwiftUI做类似的事情?

到目前为止我一直想弄清楚的是:

  1. 我想我需要一些方法来将矩形的点大小转换为大小调整为调整大小的图像的大小。我不知道如何使用SwiftUI
  2. 我认为我需要某种方式GeometryReader吗?

这是图片:

enter image description here

1 个答案:

答案 0 :(得分:1)

您应该可以在叠加层中使用GeometryReader

    var body: some View {
            Color.green.frame(width: 320, height: 320) // Pretend this is your image
                .overlay(
                    GeometryReader { proxy in
                        ZStack(alignment: .topTrailing) {
                            Color.clear // Fill the whole space
                            Color.red // Your desired overlay
                                .frame(width: proxy.frame(in: .local).width/10.0,  // Whatever proportions you want
                                       height: proxy.frame(in: .local).height/10.0)
                        }
                    })
    }

enter image description here