1
새로운 iOS-11 searchBar 접근 방식을 사용하려고하지만 관리하지 않습니다. 검색 창 대신 그 옆의 최대 보여 주지만, 왼쪽 막대 버튼 아래에 표시됩니다 :iOS 11 showBar를 leftBarButtonItem 옆에있는 탐색 바에 표시합니다.
그것은 가로 모드와 동일합니다.
self.searchResults = [[SearchResultsTable alloc] init];
self.searchResults.delegate = self;
searchController = [[UISearchController alloc] initWithSearchResultsController:self.searchResults];
searchController.searchResultsUpdater = self.searchResults;
searchController.hidesNavigationBarDuringPresentation = NO;
self.definesPresentationContext = YES;
self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]
initWithBarButtonSystemItem:UIBarButtonSystemItemRefresh
target:self
action:@selector(swapToListView:)];
if ([self.navigationItem respondsToSelector:@selector(setSearchController:)]) {
// only available from IOS-11 onwards
self.navigationItem.title = nil;
self.navigationItem.titleView = nil;
[self.navigationItem setSearchController:searchController];
} else {
// Fallback on earlier versions
self.navigationItem.titleView = searchController.searchBar;
}
이전 코드 사전 아이폰 OS-11 시스템에서 잘 작동하지만 아이폰 OS-11에 다른 문제가있다, 그래서 새로운 접근 방식을 사용하는 것을 선호 : 내가 사용하고 코드입니다. 아무도 내가 여기서 잘못하고있는 것을 알고 있습니까?
예, iOS-10 이전 버전에서 정상적으로 작동했던 이전 방식입니다. 그러나 iOS-11에는 이러한 접근 방식에 대한 중요한 사이징 문제가 있습니다. iOS-11에서 끝내기는했지만 수동 크기 조정이 많습니다. – fishinear