#ios #inheritance #uiviewcontroller
#iOS #наследование #uiviewcontroller
Вопрос:
У меня есть следующий родительский класс:
//GAViewController.h
@interface GAViewController : UIViewController
@end
//GAViewController.m
#import "GAViewController.h"
#import "GAConfigs.h"
@interface GAViewController ()
@end
@implementation GAViewController
@end
И у меня есть следующий дочерний класс, который реализует родительский класс следующим образом:
// GARegisterLoginViewController.h
#import "GAViewController.h"
@interface GARegisterLoginViewController : GAViewController
@end
//GARegisterLoginViewController.m
#import "GARegisterLoginViewController.h"
@interface GARegisterLoginViewController ()
@end
@implementation GARegisterLoginViewController
// I cannot reference GAConfigs.h in the methods here
@end
Мой configs
файл выглядит так:
#ifndef GAConfigs_h
#define GAConfigs_h
//Segues
#define LOGINREGISTER_TO_REGISTER_SEGUE @"loginregisterToRegisterSegue"
#define LOGINREGISTER_TO_LOGIN_SEGUE @"loginregisterToLoginSegue"
#endif
Проблема в GARegisterLoginViewController.m
. Я не могу ссылаться GAConfigs
на дочерний класс, даже если он импортирован в родительский класс.
Кто-нибудь знает, что я делаю не так?
Ответ №1:
Вы импортируете файл внутри вашего файла реализации ( .m
).
Если вы переместите файл в свой файл заголовка ( .h
), он будет унаследован правильно.