【问题标题】:iOS Know When Section Header is ScrollingiOS 知道节标题何时滚动
【发布时间】:2013-07-30 21:20:58
【问题描述】:

我正在开发一个 iPhone 应用程序,我希望在部分标题被下一个部分推开时执行一些自定义行为。有什么方法可以告诉我scrollViewDidScroll 何时发生这种情况?

谢谢,

【问题讨论】:

    标签: iphone ios objective-c uiscrollview


    【解决方案1】:

    您可以使用rectForHeaderInSection 获取任何部分的实际位置:

    - (void)scrollViewDidScroll:(UIScrollView *)scrollView_ {
        ...
        CGRect rect = [mytable convertRect:[mytable rectForHeaderInSection:0] toView:[mytable superview]];
        ...
    }
    

    要实现您在scrollViewDidScroll 中提到的内容,您可能会遍历所有部分(如您在表格中定义的那样)并检查rect.origin.y 以获取它是否为负值(可见区域之外)。

    希望它有助于开始考虑详细实施! Check reference also.

    【讨论】:

      【解决方案2】:

      如果您的目标是 iOS 6 及更高版本,您可以使用来自 UITableViewDelegatetableView:didEndDisplayingHeaderView:forSection: 方法:

      - (void)tableView:(UITableView *)tableView didEndDisplayingHeaderView:(UIView *)view forSection:(NSInteger)section
      {
        // do what you need
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-12-07
        • 1970-01-01
        • 2020-09-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-06-04
        相关资源
        最近更新 更多