第二次显示视图时,隐藏的搜索栏会向下滑动

时间:2013-05-07 10:29:10

标签: uitableview ios6 uiscrollview

我使用以下代码隐藏搜索栏:

- (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];
}

第一次显示视图时,代码可以正常工作。

下次显示它(从另一个控制器返回)它会滑下一点而不是它应该是,我不知道它为什么会发生。 enter image description here

1 个答案:

答案 0 :(得分:0)

好吧,在我的情况下,我玩了一段时间,并发现将其设为0.1会使其按计划运行。

[self performSelector:@selector(updateContentOffset) withObject:nil afterDelay:0.1];