Segmented Control 및 UITableView가있는 UIViewController가 있습니다. 모두 스토리 보드에 설정된 Autolayout을 사용합니다. 나는 테이블의 헤더보기로 UISearchController 및 UISearchbar을 추가 한UISearchController가 검색 결과 테이블을 표시하도록 강요합니다. 전체 화면
H:|-[SegmentedControls]-|
H:|[TableView]|
V:|-[SegmentedControls]-[TableView]|
: 여기가 설정 제약의 코드 버전입니다. 검색 결과를 표시하기 위해 새로운 UITableViewController를 만듭니다.
UITableViewController *searchResultsController = [[UITableViewController alloc] initWithStyle:UITableViewStylePlain];
searchResultsController.tableView.dataSource = self;
searchResultsController.tableView.delegate = self;
self.searchController = [[UISearchController alloc] initWithSearchResultsController:searchResultsController];
self.searchController.delegate = self;
self.searchController.searchResultsUpdater = self;
self.searchController.searchBar.frame = CGRectMake(self.searchController.searchBar.frame.origin.x, self.searchController.searchBar.frame.origin.y, self.searchController.searchBar.frame.size.width, 44.0);
self.clientListTable.tableHeaderView = self.searchController.searchBar;
self.searchController.searchBar.scopeButtonTitles = @[@"Active", @"Inactive"];
self.definesPresentationContext = YES;
그러나 나는 다음과 같은 문제에 걸쳐 온 - 난 검색 창에 눌러,이 애니메이션을하지만, 제시된보기는 대신, 상단과 하단에 흐리게 크롬되게 화면의 일부를 선택할 경우, 전체 화면으로 표시됩니다. 제시된보기의 크기는 검색 막대를 호스팅하는 tableview 중 하나와 같으며 화면의 세로 가운데에 위치합니다. 검색 결과의 표시 방식을 재정의하여 전체 화면으로 전환하는 방법이 무엇인지 모릅니다. 명시 적으로 ModalPresentationStyle을 표시 컨트롤러에 표시하고 표시 컨트롤러 모두에 설정하려고했지만 작동하지 않았습니다. 필자는 검색 결과의 프리젠 테이션 컨트롤러를 어떻게 든 재정의해야 할 필요가 있다고 느끼지만, 어디서부터 시작해야할지 모르겠다.
Apple의 UICatalog 샘플 코드를 살펴 보셨습니까? https://developer.apple.com/library/ios/samplecode/UICatalog/Introduction/Intro.html –
그건 내가 한 첫번째 일 중 하나 였고, 다음은 Apple 개발자 포럼 및 Apple 개발자 지원에 대한 질문이었습니다. –