ここでのコツは、UISearchDisplayController を書き直すことです。それは本当に3つのことしかしません。
- 検索バーをビューの一番上に移動し、UINavigationBar を非表示にします。
- ビューの残りの上に透明なカバー ビューを配置します。
- 検索結果とともに UITableView を表示します。
UIViewController を UITextField のデリゲートとして登録することから始めます。
-(void)textFieldDidBeginEditing:(UITextField *)textField {
//here is where you open the search.
//animate your textfield to y = 0.
//I usually make the search tableview and the cover a separate view,
//so I add them to my view here.
[self.navigationController setNavigationBarHidden:YES animated:YES];
}
-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
NSString *searchText = [[NSString alloc] initWithString:[textField.text stringByReplacingCharactersInRange:range withString:string]];
//display your search results in your table here.
}
-(void)textFieldDidEndEditing:(UITextField *)textField {
//hide all of your search stuff
[self.navigationController setNavigationBarHidden:NO animated:YES];
}