SwiftUI水平ScrollView onTapGesture在其后面的垂直滚动视图上注册水龙头

时间:2020-08-02 13:48:01

标签: ios swiftui scrollview

当我从垂直scrollview(ForEach)滚动项目并在水平视图上轻按项目时,我在VStack中有一个水平滚动视图(ForEach)和垂直滚动视图(ForEach)垂直视图中的手势。

这是我的代码:

defmodule UrlFromPayloadAction do
        import Plug.Conn

        def init(default), do: default

        def call(%Plug.Conn{params: %{"action" => action,
                                         "params" => %{ "id" => id }
                                     }} = conn, _default) do
              conn = conn
                     |> assign(:original_path_info, conn.path_info)
                     |> assign(:original_request_path, conn.request_path)
               
              %Plug.Conn{conn | path_info: conn.path_info ++ [ "#{action}", "#{id}" ] , request_path: conn.request_path <> "/#{action}/#{id}" }
        end
        def call(conn, _default), do: conn
end

before scrolling After scrolling

仅供参考:在垂直滚动视图的位置使用列表固​​定了敲击手势,但我想使用滚动视图,因为我想使用ScrollViewReader滚动垂直列表项作为下一步

1 个答案:

答案 0 :(得分:1)

解决方案是为两个滚动视图添加裁剪的内容形状,例如

ScrollView(.horizontal){
     // .. content here
}.contentShape(Rectangle())
.clipped()

ScrollView {
     // .. content here
}.contentShape(Rectangle())
.clipped()

通过Xcode 12 / iOS 14测试