Через некоторое время я понял, что это часто встречающаяся проблема загрузки ресурсов через библиотеку. Мне не хватало шага для добавления «CoreFramework» для ссылки на пакет ресурсов, а также я не копировал его в папку клиентского приложения. Эти шаги помогут правильно загрузить пакет ресурсов. Подсказка # dsiddhapura помогла мне определить эти проблемы.
отал над созданием «настраиваемых интерфейсов с поддержкой скинов», работающих для моего приложения для iOS, путем объединения XIB-файлов и загрузки пакетов, а также загрузки XIB-файлов в эти пакеты.
Я следовал очень полезным инструкциям здесь, чтобы заставить это почти работать.
загрузка файлов NSBundle на iOS
У меня есть пакет загрузки и разархивирования и могу увидеть файл XIB. Я не использовал ни одного кода TestViewController в примере, но вместо этого делаю это при создании контроллера представления с использованием только что загруженного xib:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *filePath = [documentsDirectory stringByAppendingPathComponent:@"gg.bundle"];
NSBundle *bundle = [NSBundle bundleWithPath:filePath];
if ( !bundle )
{
NSLog(@"Error getting bundle");
}
MyViewController *vc = [MyViewController new];
[vc initWithNibName:@"CustomDownloadedXib" bundle:bundle];
Когда я иду, чтобы поместить этот контроллер представления в мой стек, я получаю эту ошибку:
*** Завершение работы приложения из-за необработанного исключения «NSInternalInconsistencyException», причина: «Не удалось загрузить NIB в комплекте:« NSBundle (еще не загружен) »с именем« CustomDownloadedXib »
Кажется, проблема в том, что мой пакет "еще не загружен". Я попытался принудительно загрузить свой пакет, вызвав:
[bundle load]
но это не помогает
Мой подход здесь неправильный? Это похоже на интуитивный способ сделать это.
Заранее спасибо!