У меня есть UIView, что называется Popup и выставляется из UIViewContorller (ParentVC) У UIView У меня есть 4 кнопки. При нажатии кнопок необходимо открыть новые контроллеры (ParentVC). Я использую делегата, была ли моя ошибка?Делегировать форму UIView на UIViewController
//Popup.h
@protocol PopupDelegate
@required
- (IBAction)stepOfRestoration:(id)sender;
- (IBAction)clientCall:(id)sender;
- (IBAction)readyTo:(id)sender;
- (IBAction)givePhone:(id)sender;
@end
@interface Popup : PSCustomViewFromXib
@property (nonatomic, assign) id <PopupDelegate> delegate;
@property (strong, nonatomic) IBOutlet UIView *view;
- (IBAction)stepOfRestoration:(id)sender;
- (IBAction)clientCall:(id)sender;
- (IBAction)readyTo:(id)sender;
- (IBAction)givePhone:(id)sender;
В .m я это:
@synthesize delegate;
....
- (IBAction)stepOfRestoration:(id)sender {
[self.delegate buttonPressed];
}
И это Родитель .m
...
CGRect rect = CGRectMake(0,0,200,300);
Popup *popup1 = [[Popup alloc] initWithFrame:rect];
popup1.delegate = self;
....
-(void)buttonPressed {
[self performSegueWithIdentifier:@"infoSegue" sender:nil];
}
Так было моя ошибка?
', если ([делегат respondsToSelector: @selector (buttonPressed)]) {[делегировать buttonPressed]; } 'Положите аналогичную проверку и посмотрите, находится ли элемент управления внутри цикла if. – pkc456