Как мне использовать один XIB с несколькими контроллерами представления? - PullRequest
7 голосов
/ 05 сентября 2011

В моей программе у меня есть UIViewController подкласс MyViewController и два подкласса этого контроллера представления.

Я хочу, чтобы все они использовали один и тот же xib, поэтому я инициирую их как

SubClass *SC = [[SubClass alloc] initWithNibName:@"MyViewController" bundle:nil];
[self presentModalViewController:SC animated:NO];
[SC release];

Подкласс является подклассом MyViewController, который является подклассом UIViewControllerMyViewController.xib у меня для владельца файла установлено значение MyViewController.

Если бы у меня было только два подкласса, я бы, вероятно, просто продублировал xib, но я планирую иметь много-много подклассов, все с использованиемтот же хиб.

1 Ответ

3 голосов
/ 20 февраля 2013

Вы можете загрузить любой XIB с помощью

- (NSArray *)loadNibNamed:(NSString *)name owner:(id)owner options:(NSDictionary *)options

класса NSBundle. С

NSArray *arr = [[NSBundle mainBundle] loadNibNamed:@"foo" owner:nil options:nil]; 

вы можете загрузить все содержимое XIB в массив. Порядок элементов в массиве такой же, как вы определили в Интерфейсном Разработчике без Владельца Файла и Первого Ответчика.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...