0

我已经设法修复了 TableView 顶部的 searchBar。但现在我需要让节标题停止在 searchBar 下方(它是 tableHeaderView 的一部分)。我已经像这样子类化了 UITableView:

#import "CustomTableView.h"

@implementation CustomTableView

- (void)layoutSubviews
{
    [super layoutSubviews];
    CGRect rect = self.tableHeaderView.frame;
    rect.origin.y = MAX(0, self.contentOffset.y);
    self.tableHeaderView.frame = rect;
    [self bringSubviewToFront:self.tableHeaderView];
}

@end

我试图用这个保留下面的部分标题:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
    if (scrollView.contentOffset.y < 0)
    {
        scrollView.contentInset = UIEdgeInsetsMake(44+scrollView.contentOffset.y, 0, 0, 0);
    } else {
        scrollView.contentInset = UIEdgeInsetsMake(44, 0, 0, 0);
    }
    NSLog(@"offset: %f", scrollView.contentOffset.y);
}

我试图在 tableView 上放置一个带有插图的偏移量。但是当将 tableView 拉到底时,它会在顶部产生一个间隙。并且在用户仍在拖动时尝试删除它们是没有意义的(就像我的尝试一样)。

我知道我可以使用 UIView 并在顶部放置一个 searchBar 并在其下方放置一个 UITableView,但是当我开始基于 TableViewController 构建此视图时,我将不得不更改很多代码。

有什么解决办法吗?

4

0 回答 0