小编Dan*_*tin的帖子

SwiftUI 剪切图像仍然接受点击手势

我在 SwiftUI 中剪辑图像时遇到问题

这是错误工作示例最少的代码:

struct TestView: View {
    var body: some View {
        Image("iPhone13Pro")
            .resizable()
            .scaledToFill()
            .frame(width: 400, height: 400)
            .border(.black)
            .clipped()
            .onTapGesture {
                print("click")
            }
    }
}
Run Code Online (Sandbox Code Playgroud)

正如我所料,框架外的点击不应在控制台上打印任何内容,但它会打印

结果,图像没有被剪切,我click在控制台中看到

结果似乎渲染正确,但图像外部的触摸(红色箭头)仍然产生控制台日志

使用 .clipped()

图像不是方形的,而是水平的,所以,如果没有.clipped()它,看起来像这样:

没有 .clipped()

image aspect-ratio clipped aspect swiftui

3
推荐指数
1
解决办法
1269
查看次数

标签 统计

aspect ×1

aspect-ratio ×1

clipped ×1

image ×1

swiftui ×1