iOS 6 および iOS 7 で動作するはずのアプリで、iOS 7 で実行すると、ナビゲーション バーに埋め込まれた検索バーのキャンセル ボタンが表示されなくなりました。iOS 6 では機能します。
検索バーはナビゲーション バーのタイトル ビューにあり、検索バーがファーストレスポンダーになるとキャンセル ボタンが表示されます。
iOS7
iOS6
孤立したテスト ケースでは、コードは非常に単純です。
@interface MyViewController : UITableViewController<UISearchBarDelegate>
@property (nonatomic) IBOutlet UISearchBar* searchBar;
@end
@implementation MyViewController
- (void)viewDidLoad
{
[super viewDidLoad];
self.navigationItem.titleView = self.searchBar;
}
- (void) searchBarTextDidBeginEditing: (UISearchBar*) searchBar {
[searchBar setShowsCancelButton: YES animated: YES];
}
@end
これは、ドキュメントで見逃していた iOS 7 の意図的な変更ですか? はいの場合、代わりになるものは何ですか?
そうでない場合、コードに誤りがありますか?