У меня проблемы с передачей индекса UISegmentedControl из FlipSideViewController.m в мой MainViewController.m, который содержит мой MKMapView.Вот мой код:
MainViewController.h
@interface MainViewController : UIViewController <FlipsideViewControllerDelegate, MKMapViewDelegate> {
MKMapView *mapView;
}
@property (nonatomic, retain) UISegmentedControl *mapType;
@property (nonatomic, retain) IBOutlet MKMapView *mapView;
- (IBAction)showInfo:(id)sender;
@end
FlipSideViewController.h
@protocol FlipsideViewControllerDelegate;
@interface FlipsideViewController : UIViewController {
id <FlipsideViewControllerDelegate> delegate;
IBOutlet UISegmentedControl *mapType_;
}
@property (nonatomic, assign) id <FlipsideViewControllerDelegate> delegate;
- (IBAction)done:(id)sender;
@property (nonatomic, retain) UISegmentedControl *mapType_;
@end
@protocol FlipsideViewControllerDelegate
- (void)flipsideViewControllerDidFinish:(FlipsideViewController *)controller;
- (void)flipsideViewControllerSelectionChangedToIndex:(int)index;
@end
FlipSideViewController.m
- (IBAction)changeView {
[delegate flipsideViewControllerSelectionChangesToIndex: mapType_.selectedSegmentIndex];
}
MainViewController.m
- (void)flipsideViewControllerSelectionChangedToIndex:(int)index {
if ( index == 0 )mapView.mapType = MKMapTypeStandard;
if ( index == 1 )mapView.mapType = MKMapTypeHybrid;
if ( index == 2 )mapView.mapType = MKMapTypeSatellite;
}
Моя проблема в том, что в моем симуляторе, когда я щелкаю по любому из сегментов в UISegmentedControl, приложение закрывается.Консоль показывает эту ошибку:
-[FlipsideViewController changeView:]: unrecognized
selector sent to instance 0x6d43f30
2011-06-01 19:50:31.055 GermTracker2[893:207] ***
Terminating app due to uncaught exception 'NSInvalidArgumentException',
reason: '-[FlipsideViewController changeView:]:
unrecognized selector sent to instance 0x6d43f30'