У меня есть UIViewController
, то есть UISearchBarDelegate
и MKMapViewDelegate
.Событие searchBarSearchButtonClicked
работает нормально, но при тестировании в iOS 4.2 searchBarCancelButtonClicked никогда не вызывается при нажатии кнопки отмены.В 4.3 все отлично работает.У меня есть другие взгляды с идентичным кодом, и он отлично работает.Я трижды проверил подписи метода.
Может ли это быть что-то делать с MapView, или я делаю что-то явно неправильно?
Мой .h файл:
@interface MyViewController : UIViewController <UISearchBarDelegate,MKMapViewDelegate,UIAlertViewDelegate>{
MKMapView *mapMainView;
UISearchBar *sBar;
}
@property (nonatomic, retain) UISearchBar *sBar;
@end
И я создаю панель поискавот так:
sBar = [[[UISearchBar alloc] initWithFrame:CGRectMake(0, 0, 320.0, 70.0)] autorelease];
sBar.delegate = self;
sBar.showsCancelButton = YES;
[self.view addSubview:sBar];
[sBar becomeFirstResponder];
Метод:
- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar
{
[searchBar resignFirstResponder];
searchBar.hidden = YES;
}
Кто-нибудь имеет представление о том, почему это может происходить?