2011-11-01 91 views
0

我正在使用UISearchDisplayController。如何隱藏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

我要猜你的tableview沒有正確調整,所以當搜索欄被刪除,你看無論背景是父視圖。

+0

如果我沒有改變方向,所有顯示正確。即使我滾動tableview。 – MBonevil

0

你爲什麼不使用

[self.searchDisplayController setActive:NO animated:YES]; 

,而不是所有的代碼。這將刪除鍵盤以及