繁体   English   中英

iOS UITableView内容偏移量在iOS7中不起作用

[英]iOS UITableView content offset not working in iOS7

在我的应用程序中,我的UITableView标题中有一个搜索栏。 我试图为UITableView设置内容偏移量以隐藏搜索栏,但这给我带来了一些问题。

最后我这样解决了:

- (void)viewWillAppear:(BOOL)animated
{
    [self performSelector:@selector(hideSearchBar) withObject:nil afterDelay:0.0f];
}

- (void)hideSearchBar 
{
    self.tblView.contentOffset = CGPointMake(0, 40);
}

问题在于它仅适用于iOS 8。

我如何才能正确实现此功能以使其同时适用于iOS 7和8?

对不起,我英语不好。 提前致谢。

如果您通过self.tblView.tableHeaderView = yourSearchBar设置标题(推荐方式),请尝试

self.tblView.tableHeaderView = nil;

要么

self.tblView.tableHeaderView = [[UIView alloc] initWithFrame:CGRectZero];

隐藏它。

PS。 yourSearchBar应该是实例变量或属性,以便将来方便显示。

- (void)viewDidLoad
{
    [super viewDidLoad];

    UISearchBar *bar = [[UISearchBar alloc] initWithFrame:CGRectMake(0, 0, [UIScreen mainScreen].bounds.size.width, 40)];

    self.tableView.tableHeaderView = bar;

}

- (void)viewWillAppear:(BOOL)animated
{
    [self performSelector:@selector(hideSearchBar) withObject:nil afterDelay:0.0f];
}

- (void)hideSearchBar
{
    self.tableView.contentOffset = CGPointMake(0, -24);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM