如何在 SwiftUI 中查找滚动视图内容是不是已到达内容的末尾

Posted

技术标签:

【中文标题】如何在 SwiftUI 中查找滚动视图内容是不是已到达内容的末尾【英文标题】:How to find if scrollview content has reached its end of the content in SwiftUI如何在 SwiftUI 中查找滚动视图内容是否已到达内容的末尾 【发布时间】:2020-03-05 16:43:04 【问题描述】:

我正在用 SwiftUI 开发一个应用程序。在我的应用程序屏幕中,我有一个滚动视图,我想在其中查找滚动视图是否已到达其底部或滚动结束。我可以使用 GeometryReader 找到内容偏移量,但找不到确定滚动结束的方法。

下面是我试过的代码:

    var body: some View 
        ScrollView 

            GeometryReader  geometry -> Text in
                print("\(self.offsetValue)")
                DispatchQueue.main.async 
                    self.offsetValue = geometry.frame(in: .global).origin.y
                

            

         
 

提前致谢!!

【问题讨论】:

【参考方案1】:

一种方法是在UIViewRepresentable 中使用UIScrollview,您可以实现滚动视图委托方法。

还建议阅读此article,您可以了解它是如何工作的

【讨论】:

以上是关于如何在 SwiftUI 中查找滚动视图内容是不是已到达内容的末尾的主要内容,如果未能解决你的问题,请参考以下文章

SwiftUI当总内容宽度小于屏幕宽度时,如何在动态水平滚动视图中居中内容

ContentView (SwiftUI) 的背景图像不是子视图,但具有正确的滚动行为

如何使 SwiftUI 滚动视图缩小到内容?

滚动视图中的内容作为列表项在滚动(swiftui)时消失,为啥?

如何在最新的 iOS 14 中仅在 swiftui 中舍入滚动视图的顶角

SwiftUI:如何让滚动视图包含完整列表长度