我在表头中有一个带有 searchBar 的 UITableView。我在 viewWillAppear 中调用 setContentOffset 使其隐藏在顶部。但是,每当键盘显示然后隐藏时,比如在详细视图中编辑某些字段时,searchBar 就会重新出现。可能是由于 UITableView 的默认行为会根据键盘事件进行自我调整。
有什么办法可以防止 tableView 向下滚动。我曾尝试将相同的 setContentOffset 放在keyboardDidHide{} 中,但它似乎将tableView 偏移了太多。理想情况下,我不想在 tableView 中看到任何移动。
- (void) viewWillAppear:(BOOL)animated {
LOG(@"viewWillAppear: called");
[super viewWillAppear:animated];
[self.tableView setContentOffset:CGPointMake(0, 44)];
}