如何知道视图的 frame.maxY 是否已经滚动到屏幕顶部?

How to know if view's frame.maxY was already scrolled on top of screen?

我在视图中有一个标签,并且视图在 UIScrollView 中 (UIScrollView -> UIView -> UILabel)

我可以使用 label.frame.maxY 看到我的 UILabel 的底部,如果标签的底部已经向上滚动到屏幕顶部(已经不可见),我想 运行 一个函数).

我怎么知道我是否已经在屏幕顶部滚动了足够多的内容?

您可以访问滚动视图的contentOffset。根据此值,您将知道您的按钮在给定时间是否可见。


func isButtonVisible() -> Bool {
  return contentOffset.y < buttonSuperView.frame.y + button.frame.maxY
}