[英]iOS 7 UISearchDisplay controller is hiding Navigation controller's bar
我正在從iOS 6過渡到iOS 7的應用程序中遇到此問題。
我在xib中有一個導航欄,在它們的下面是帶有UISearchDisplayController子類的表格視圖; 因為我必須處理搜索默認行為,這會使搜索欄上升,並通過以下代碼在iOS 6中將導航欄隱藏在其下方:
-(void)setActive:(BOOL)visible animated:(BOOL)animated
{
if(self.active == visible)
{
return;
}
[self.searchContentsController.navigationController setNavigationBarHidden:YES animated:NO];
[super setActive:visible animated:animated];
[self.searchContentsController.navigationController setNavigationBarHidden:NO animated:NO];
if (visible) {
[self.searchBar becomeFirstResponder];
} else {
[self.searchBar resignFirstResponder];
}
}
現在,我想將其過渡到iOS 7,行為發生了變化,每當我在搜索欄中寫入文本時,導航欄便會隱藏而不會使搜索欄上升,並且搜索結果表會被搜索欄覆蓋,因此導航欄保持隱藏狀態直到搜索結束。
我想知道此行為的原因是什么,如何在不隱藏導航欄的情況下保持相同的行為。
在此先感謝,感謝您的幫助。
至於造成這種情況的原因,我相信這是UISearchDisplayController
的標准操作過程(以及iOS 8的UISearchController
)。 當發現UISearchBar
作為UITableView
的tableHeaderView
時, UINavigationController
, UITableView
等以非常特殊的方式起作用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.