2016-04-05 7 views
1
//tableview 
self.specialAttentionTableView = [[BATableView alloc] initWithFrame:CGRectMake(0, 64 + searchBarH, self.view.frame.size.width, self.view.frame.size.height - 50)]; 
self.automaticallyAdjustsScrollViewInsets = NO; 
self.specialAttentionTableView.delegate = self; 
[self.view addSubview:self.specialAttentionTableView]; 
//searchBar 
_searchBar = [[UISearchBar alloc] initWithFrame:CGRectMake(0, 64, self.view.frame.size.width, searchBarH)]; 
_searchBar.placeholder = @"Search"; 
_searchBar.delegate = self; 
[self.view addSubview:_searchBar]; 
//searchDisplayController 
_searchDisplayController = [[UISearchDisplayController alloc]initWithSearchBar:_searchBar contentsController:self]; 
_searchDisplayController.searchResultsDataSource = self; 
_searchDisplayController.searchResultsDelegate = self; 

Wenn ich SearchBar-self.view hinzufügen, die SearchBar nicht an navigationbarUISearchBar bewegen sich nach oben nicht

jedoch nach oben, wenn ich es tableView.headView hinzufügen, funktioniert es enter image description here

Antwort

0

Try dies:

Fügen Sie diesen Code:

_searchBar.bounds = CGRectMake(0, 64, self.view.frame.size.width, searchBarH); 
0

Ich glaube, was Sie hier versuchen, ist die Suchleiste in der Navigationsleiste hinzuzufügen. Selbst wenn ich früher ein ähnliches Problem hatte, erstellte ich eine benutzerdefinierte Ansicht und integrierte die Suchleiste in die benutzerdefinierte Ansicht und fügte dann die benutzerdefinierte Ansicht dem Navigationscontroller hinzu. Ich denke, dass Sie den folgenden Code hilfreich finden könnten.

[self.searchView addSubview:self.searchController.searchBar]; 

[self.navigationController.topViewController.view addSubview: self.searchView];