我使用以下代码隐藏搜索栏:
- (void)updateContentOffset
{
self.tableView.contentOffset = CGPointMake(0, 44);
}
- (void)viewWillAppear:(BOOL)animated
{
NSLog(@"%s",__PRETTY_FUNCTION__);
[super viewWillAppear:animated];
[self searchBarShouldEndEditing:self.searchDisplayController.searchBar];
[self performSelector:@selector(updateContentOffset) withObject:nil afterDelay:0.0];
self.fetchedResultsController.delegate = self;
}
- (void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
[self.fetchedResultsController performFetch:nil];
[self.tableView reloadData];
[self.tableView scrollRectToVisible:CGRectMake(0, 44, 1, 1) animated:YES];
}
第一次显示视图时,代码可以正常工作。
下次显示它(从另一个控制器返回)它会滑下一点而不是它应该是,我不知道它为什么会发生。
答案 0 :(得分:0)
好吧,在我的情况下,我玩了一段时间,并发现将其设为0.1会使其按计划运行。
[self performSelector:@selector(updateContentOffset) withObject:nil afterDelay:0.1];