ios – 在UITableView中滚动时移动视图

我有一个UIView在下面有一个UITableView:

我想做的是在用户开始在表中滚动以使UITableView有更多的空间(当您再次向下滚动)时,让UITableView上方的视图向上移动(以外的方式).

我知道这通常是用表头视图来完成的,但我的问题是我的表视图在一个选项卡内(实际上是使用TTSliddingPageviewcontroller实现的侧滚页面视图).所以当我只有一个顶级UIView有三个UITableViews.

是否可以手动完成?我的第一个想法是将所有内容都放在UIScrollView中,但是根据Apple的文档,UIScrollView中不应该放置一个UITableView,因为这会导致不可预知的行为.

解决方法

由于UITableView是UIScrollView的子类,因此您的表视图的委托可以接收UIScrollViewDelegate方法.

在您的表视图的代表中:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
    static CGFloat previousOffset;
    CGRect rect = self.view.frame;
    rect.origin.y += previousOffset - scrollView.contentOffset.y;
    previousOffset = scrollView.contentOffset.y;
    self.view.frame = rect;
}

以上是来客网为你收集整理的ios – 在UITableView中滚动时移动视图全部内容,希望文章能够帮你解决ios – 在UITableView中滚动时移动视图所遇到的程序开发问题。

如果觉得来客网网站内容还不错,欢迎将来客网网站推荐给程序员好友。