我有一个列表视图,列表的每一行都包含一个带有一些文本视图的HStack和一个图像,如下所示:

HStack{
    Text(group.name)
    Spacer()
    if (groupModel.required) { Text("Required").color(Color.gray) }
    Image("ic_collapse").renderingMode(.template).rotationEffect(Angle(degrees: 90)).foregroundColor(Color.gray)
}.tapAction { self.groupSelected(self.group) }

这似乎很有效,除了当我点击文本和图像之间的空白部分(其中Spacer()是)时,点击操作没有注册.只有当我点击文本或图像时,点击操作才会发生.

还有没有人遇到过这个问题/知道解决办法?

推荐答案

正如我最近了解到的,还有:

HStack {
  ...
}
.contentShape(Rectangle())
.onTapGesture { ... }

对我来说很管用.

Ios相关问答推荐

SwiftUI中的视频时间轴

快速相机放大手势不能正常工作

由于已存在同名项目,因此无法将Mapbox.xcframework-ios.sign复制到Signature中

许多文本字段的性能问题

SwiftUI - 搜索栏和导航标题之间的空间太大

如何结合`@dynamicMemberLookup`和`ExpressibleByStringInterpolation`来实现方法链?

核心媒体基础知识,了解 CMSampleBuffer、CMBlockBuffer 和 CMSampleBufferGetAudioBufferListWithRetainedBlockBuffer

@MainActor 类的扩展是主要演员吗?

SwiftUI - ScrollView 不显示底部文本

SwiftUI 我自己的渲染函数的返回类型是什么?

如何将标准化坐标系中的点的位置转换为具有相对位置的常规坐标系?

Flutter:无法构建 iOS 应用程序ARCHIVE FAILED,为设备归档时遇到错误

如何找出坐标之间的距离?

用 PC 调试 ipad safari

UITableView 背景 colored颜色 在 iPad 上总是白色

Xcode 8:函数类型不能有参数标签 destruct 我的构建

SwiftUI NavigationView navigationBarTitle LayoutConstraints 问题

'无效更新:第 0 节中的无效行数

swift 语言中的 null / nil

使用 Swift 在一个 ViewController 中强制横向模式