У меня возникли проблемы с выяснением причин, почему я получаю нулевого делегата для этого звонка. Похоже, я отлично настраиваю делегата.Делегат не установлен (правильно установлен)
LogoutViewController.h
@protocol SomeNewDelegate <NSObject>
@required
- (void)someMethod;
@end
@interface LogoutViewController : UIViewController
@property (nonatomic, weak) id<SomeNewDelegate> delegate;
LogoutViewController.m
- (IBAction)logoutButtonTapped:(id)sender {
NSLog(@"logout tapped");
[self.delegate someMethod];
[self dismissViewControllerAnimated:YES completion:nil];
}
MainViewController.m
@interface MainViewController() <UIScrollViewDelegate, SomeNewDelegate>
@property (nonatomic, strong) LogoutViewController *logoutVC;
@end
@implementation MainViewController
- (void)viewDidLoad {
[super viewDidLoad];
self.logoutVC.delegate = self;
}
- (void)someMethod {
NSLog(@"someMethod");
}
SomeMethod никогда не вызывается, и я не понимаю, почему делегат равна нулю. Любая помощь?
Вы не создали экземпляр объекта LogoutViewController –
, который вы только что объявили и использовали этот «logoutVC». , вам также необходимо создать экземпляр этого объекта. –