当URL
的一个单元格被点击时,我正在尝试打开List
。我尝试将修饰符onTapGesture
添加到单元格本身,然后调用UIApplication.shared.open(url)
,但这仅在水龙头位于单元格视图元素上(而不是单元格背景上)的情况下才有效。
我还尝试向不透明度为0.01的单元格添加背景视图(矩形),但是尽管这样做可以使Rectangle尽管不透明度很低,但还是很明显的。
是否有任何解决方法可以使整行都可轻敲?
答案 0 :(得分:1)
@stakri,您要查找的是“ .contentShape()”
Rectangle()
.stroke()
.onTapGesture() {
UIApplication.shared.open(URL(string: "https://stackoverflow.com")!)
}
仅当您点击矩形的“笔触”轮廓时,以上代码才起作用,但是.contentShape()可以使整个区域都可以被点击,而无需将其嵌套在堆栈中:
Rectangle()
.stroke()
.contentShape( Rectangle() )
.onTapGesture() {
UIApplication.shared.open(URL(string: "https://stackoverflow.com")!)
}
其他遇到此问题的人可能会在寻找如何专门打开URL,您会注意到我强行打开了URL。对此可以接受反馈,但是除非出现任何问题,否则效果很好。
答案 1 :(得分:0)
找到了一个解决方案,以防将来对任何人有帮助:
//编辑:
使用单个read_csv
,在操作闭包中使用所需的操作(在我的情况下为Button
),并在openURL
闭包中返回我的自定义视图。