我在Master-Detail-Application上創建了一個新的iPhone項目。由於我之前需要登錄,因此我在故事板中添加了一個新的ViewController,勾選「是初始視圖控制器」,並將新創建的類LoginViewController分配給此ViewController。更改Master-Detail-Application的初始視圖控制器
此外,但不相關(在我看來),我創建了一個segue並將其從ViewController連接到NavigationController(Master-Detail-Template)。
的AppDelegate.m改爲在啓動時推出新的控制器:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// Override point for customization after application launch.
/* // Old Master-Detail-View-Controller
UINavigationController *navigationController = (UINavigationController *)self.window.rootViewController;
MasterViewController *controller = (MasterViewController *)navigationController.topViewController;
controller.managedObjectContext = self.managedObjectContext;
*/
(LoginViewController *)self.window.rootViewController;
return YES;
}
這將在錯誤結束:
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException',
reason: '-[UICollectionViewController loadView] loaded the "Qn5-Rj-iPA-view-IRE-eP
-ILZ" nib but didn't get a UICollectionView.'
我也一樣嘗試這樣:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// Override point for customization after application launch.
LoginViewController *loginViewController = [[LoginViewController alloc] init];
self.window.rootViewController = loginViewController; //Set the view controller
[self.window makeKeyAndVisible];
return YES;
}
導致類似的錯誤:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException',
reason: 'UICollectionView must be initialized with a non-nil layout parameter'
我的錯誤在哪裏?
我得不到的是,地獄裏的UICollectionView來自錯誤信息。我從來沒有創建一個或添加一個?
我也試過這個,但是這也會引發錯誤。由於代碼**期望一個新的** viewController **不是的topViewController **,請參閱** didFinishLaunchingWithOptions **中的第一條評論。以及我只嘗試**返回YES; **,但這並沒有工作。將重新檢查。 – jerik 2013-02-12 07:53:43
除了做我的修復,我不得不從'didFinishLaunchingWithOptions'中刪除所有東西,只是'返回YES;'。現在它可以工作。 – jerik 2013-02-12 08:48:35