在应该在 iOS 6 和 iOS 7 上运行的应用程序中,如果该应用程序在 iOS 7 上运行,则不会再显示嵌入在导航栏中的搜索栏的取消按钮。在 iOS 6 上,它可以工作。
搜索栏位于导航栏的标题视图中,如果搜索栏成为第一响应者,则应显示取消按钮:
IOS 7
iOS 6
在一个孤立的测试用例中,代码非常简单:
@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 中的故意更改吗?如果是,应该是什么替代方案?
如果没有,我的代码是否有错误?