我正在使用UISearchDisplayController。
当用户在表格中选择一行时,我想隐藏搜索栏。
这是我的尝试:
- (void)displaySearchBar:(BOOL)show {
[UIView animateWithDuration:0.15
delay:0
options:UIViewAnimationOptionBeginFromCurrentState
animations:^{
[m_searchDisplayController.searchBar setHidden:!show];
[m_categoriesView.categoriesTable setContentInset:show ?
UIEdgeInsetsMake(0,0,0,0) : UIEdgeInsetsMake(-CGRectGetHeight(m_searchDisplayController.searchBar.frame),0,0,0)];
if( show ) {
[m_categoriesView.categoriesTable setContentOffset:CGPointZero];
}
}
completion:NULL];
}
除非用户旋转设备,否则一切正常。 搜索栏被隐藏但我在桌子顶部有一个黑色空间。
有人有线索吗?
致以最诚挚的问候,
马丁
答案 0 :(得分:0)
我猜你的tableview没有正确调整大小,所以当删除搜索栏时,你会看到父视图的背景。
答案 1 :(得分:0)
为什么不使用
[self.searchDisplayController setActive:NO animated:YES];
而不是所有代码。这也将删除键盘