Я программно создаю несколько таблиц, и код работал отлично в течение многих лет. Две недели назад он не генерировал никаких предупреждений, когда я его последний раз запускал. Ive с момента обновления до iOS 8.3, и теперь я получаю три предупреждения для каждого UITableViewController.
Переопределение метода для назначенного инициализатора суперкласса '-initWithStyle:' не найден.
Переопределение метода для назначенного инициализатора суперкласса '-initWithCoder:' не найден.
Переопределение метода для назначенного инициализатора суперкласса '-initWithNibName: bundle:' not found.
Код для инициализации таблицы аналогичен для всех моих таблиц:
- (instancetype)initInManagedObjectContext:(NSManagedObjectContext *)context
withScoreKeeper:(ScoreKeeper *)scorer
withWordList:(WordList *)wordlist {
self = [super initWithStyle:UITableViewStyleGrouped];
if (self) {
_mObjContext = context;
_scoreKeeper = scorer;
_wordList = wordlist;
}
return self;
}
а .h выглядит так:
@interface SettingsTableViewController : UITableViewController {
UIPopoverController *popover;
}
- (instancetype)initInManagedObjectContext:(NSManagedObjectContext *)context
withScoreKeeper:(ScoreKeeper *)scorer
withWordList:(WordList *)wordlist NS_DESIGNATED_INITIALIZER;
Я думал, что переопределяю назначенный инициализатор, вызывая self = [super initWithStyle: UITableViewStyleGrouped];, но я думаю, что у компилятора теперь есть другие идеи.
Итак, как мне переопределить назначенный инициализатор?