2016-01-06 2 views
6

Я создал фреймворк с контроллером вида с именем «AuthenticationViewController.h» с nib «AuthenticationViewController.xib». И образец проекта для тестирования использовался для представления AuthenticationViewController. В Objective-C:Как представить контроллер просмотра из внешней структуры в быстром?

NSString *frameworkDirPath = [[NSBundle mainBundle] privateFrameworksPath]; 
NSString *frameworkBundlePath = [frameworkDirPath stringByAppendingPathComponent:@"SendOTPFramework.framework"]; 
NSBundle *frameworkBundle = [NSBundle bundleWithPath:frameworkBundlePath]; 
AuthenticationViewController *authenticationViewController = [[AuthenticationViewController alloc]initWithNibName:@"AuthenticationViewController" bundle:frameworkBundle]; 
authenticationViewController.delegate = self; 
[self presentViewController:authenticationViewController animated:YES completion:nil]; 

, который работает хорошо для меня.

Но когда я использую следующий код в Swift:

let frameworkBundle = NSBundle(identifier: "SendOTPFramework") 

let authViewControler :AuthenticationViewController = AuthenticationViewController.init(nibName: "AuthenticationViewController", bundle: frameworkBundle) 
authViewControler.delegate = self 
self.presentViewController(authViewControler, animated: true, completion: nil) 

аварий приложение с ошибкой: -?

Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Could not load NIB in bundle: 'NSBundle (loaded)' with name 'AuthenticationViewController''

ответ

2

NSBundle(identifier: "SendOTPFramework"), не NSBundle(path: <#T##String#>) Вы уверены, что имеется доступный идентификатор Вы использовали различная функция в разных языках.

+0

Является ли «идентификатор» идентификатором связки рамки, включенной в проект. Или имя фреймворка включено. –

+0

@HussainChhatriwala Идентификатор связки рамки. Вы также можете использовать функцию пути в быстром режиме. – Lumialxk

+0

Вышеприведенный способный открыть контроллер. но все же приложение получает сбой после нескольких секунд на делете приложения без каких-либо аварийных журналов. –

Смежные вопросы