【发布时间】:2021-02-09 15:09:52
【问题描述】:
我有一个包含 UIViewRepresentable(一些 UIView)的视图。该 UIView 有一个按钮作为子视图,它有自己的操作。我有两个问题:
如果 SwiftUI 视图没有附加点击手势,则 UIView 的按钮事件 (UIControlEventTouchUpInside) 不会在单击时触发,而是仅在长按时触发。 如果 SwiftUI 视图附加了点击手势,则 UIView 按钮上的触摸触发正常,但 SwiftUI 视图的事件也会触发(同时触摸) SwiftUI 的 View 的 .gesture 修饰符允许附加带有不同掩码的 Gesture,但它们实际上只考虑附加到 SwiftUI 视图层次结构的手势,并且似乎没有考虑附加到它的 UIView 子视图的手势
VStack(spacing: 0) {
textfield <-- UIView inside that has own action
}.onTapGesture {
endEditing() <-- this called together with UIView's action
}
【问题讨论】:
标签: view uiview swiftui uigesturerecognizer uiviewrepresentable