-1
Я разрабатываю приложение IOS. Я создал базовый класс для создания экземпляра serverclass с делегатом. Я установил этот делегат в методе init. Я ожидал, что делегат будет установлен для всех подклассов, но по какой-то причине этого не произошло. Код выглядит следующим образом. BaseClass.hДелегат базового класса, не вызываемый для подкласса
@interface BBBaseCommand : NSObject<SectionCommand,ServerDelegate>
{
Server *serverObj;
}
- (instancetype)init;
- (void)serverDidReceiveResponse:(NSDictionary *)response;
- (void)serverDidReceiveError:(NSError *)error;
@end
BaseClass.m
-(instancetype)init
{
serverObj = [[Server alloc]init];
[serverObj setDelegate:self];
return self;
}
SubClass.h
@interface BBBoatSaleCommand : BBBaseCommand
-(void)excute;
-(instancetype)init;
@end
SubClass.m
-(instancetype)init
{
self = [super init];
return self;
}
-(void)excute
{
NSMutableDictionary *params = [[NSMutableDictionary alloc] init];
[serverObj BoatSaleParams:params];
}
- (void)serverDidReceiveResponse:(NSDictionary *)response
{
NSLog(@"Response: %@", response);
}
- (void)serverDidReceiveError:(NSError *)error
{
NSLog(@"Error: %@", error);
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Message" message:@"An error occured while retrieving the data, please try again later." delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil];
[alertView show];
}
@end
спасибо заранее.