「検索バーと検索表示コントローラー」を備えたテーブルビューを含む xCode プロジェクトを使用して、ユーザーが表示項目のリストを絞り込むことができるようにしています。一般に、 http://www.raywenderlich.com/16873/how-to-add-search-into-a-table-viewで提供されているガイダンスに従いました。最近、iOS 7 をサポートする最新の xCode (バージョン 5.0 (5A1413)) をダウンロードし、問題のアプリをさまざまなターゲットでテストしています。
このアプリを iOS 6 ターゲット (エミュレーターまたは実際のデバイス) で実行すると、期待どおりに動作します。つまり、キャンセル ボタンを押すと検索バーが削除され、クリア ボタン (小さな灰色の x) を押すと、既に入力されているすべての検索条件がクリアされます。ユーザー。しかし、プロジェクトを iOS 7 ターゲットで実行すると、クリア ボタンとキャンセル ボタンの両方が機能しません。
このプロジェクトには searchBarCancelButtonClicked メソッドが実装されており、ターゲットが iOS 7 を実行しているときに呼び出されないことを確認しました。
- (void)searchBarCancelButtonClicked:(UISearchBar *)SearchBar
{
NSLog(@"searchBarCancelButtonClicked called");
self.searchBar.text = nil;
…
// Hide Search bar when cancelled
[self hideSeachBar];
[self.searchBar resignFirstResponder];
…
}
私のテーブル ビュー コントローラーは、UISearchDisplayDelegate と UISearchBarDelegate になるように設定されています。また、iOS 6 または 7 ターゲットで searchBar:textDidChange: が呼び出されるため、これはまだ機能しているようです。
@interface ItemViewController () <UISearchDisplayDelegate, UISearchBarDelegate>
…
@end
これに関連する他の投稿や iOS 7 の変更資料 ( https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/TransitionGuide/Bars.html#//apple_ref/doc/uidなど) が表示されません/TP40013174-CH8-SW1 ) には、iOS7 をサポートするために必要な再コーディングが記載されています。
これについて何か考えはありますか?ありがとう