我正在做類似Facebook應用程序的左側面板搜索功能。我有兩個UITableViewControllers。當用戶點擊UISearchBar以顯示搜索結果時,我從其中一個獲取tableView並將其放在另一個之上。當我創建第二個的UITableViewController,我知道的,它的分隔符樣式將是沒有在viewDidLoad方法:UITableViewCell分隔符風格不變
self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
然後,當我把它的tableView第一的UITableViewController的觀點之上,它是空的,首先,因爲沒有數據尚未輸入到UISearchBar。並沒有任何分隔符。但是,當用戶輸入任何字母和表格數據有一些記錄時,分隔符樣式將返回到默認的樣式(白線)。
因此,由於某種原因,我的第二個控制器忘記了什麼應該是分隔符樣式並在重新載入表視圖分隔符後再次顯示。 What can be the reason?
編輯: 這是我如何創建我的第二個的UITableViewController,並採取它的tableView把第一控制器的看法:
- (UIView *)searchResultsView
{
if (! _searchResultsView) {
_searchResultsView = self.searchResultsViewController.tableView;
_searchResultsView.frame = CGRectMake(0, 44, 320, self.view.frame.size.height-44);
}
return _searchResultsView;
}
- (SearchResultsViewController *)searchResultsViewController
{
if (! _searchResultsViewController) {
_searchResultsViewController = [[SearchResultsViewController alloc] init];
_searchResultsViewController.searchBar = _searchBar;
}
return _searchResultsViewController;
}
- (void)searchBarTextDidBeginEditing:(UISearchBar *)searchBar
{
[self.view addSubview:self.searchResultsView];
}
截圖:
這是它的外觀,當有爲表視圖沒有數據:
正如你看到的,沒有分隔符。
這就是它在有數據時的樣子。我刪除了單元格內容。如你所見,有白色的分隔符。
是 「的tableView」 是UITabViewController的對象? – NSUserDefault
這是第二個UITableViewController的對象,它放在第一個UITableViewController的視圖之上,當用戶想要搜索某些東西時。他不在相同的表格數據中搜索。這就是爲什麼我使用另一個表視圖控制器。這一切看起來像Facebook應用程序的搜索它左側面板。 – wzbozon
@wzbozon你可以展示你的代碼以及你試圖實現的屏幕截圖嗎? – Rushi