swiftui是否具有hitTest等效项?

时间:2019-06-10 21:49:52

标签: swiftui

我在全局坐标空间中有一个手势的触摸位置,我想从中找出那些坐标处的Rectangle。我该怎么办?

1 个答案:

答案 0 :(得分:1)

不,不是。通过SwiftUI设计,应该在要处理动作的视图中显式添加轻击手势。因此,如果我的视图中有一些可点击的元素,我必须将它们设为视图并向其附加手势,例如

var body: some View {
    HStack {
        Rectangle()
            .fill(Color.red.opacity(0.2))
            .frame(width: 300, height: 300)
            .clipShape(Circle())
            .onTapGesture {
                print("Tapped!")
            }
    }
}

如果某些视图可以重叠,则应使用.allowsHitTesting(false)修饰符标记不活动的视图。