2017-01-18 2 views
0

Я пытаюсь создать логин/защищенную страница сеанса страницы с помощью Swift 3.0AppDelegate didFinishLaunchingWithOptions launchOptions - согласующий с неперехваченным исключением типа NSException Swift 3,0

Поэтому я создал didFinishLaunchingWithOptions launchOptions функции в AppDelegate.swift, как показано ниже

AppDelegate.swift

import UIKit 

@UIApplicationMain 
class AppDelegate: UIResponder, UIApplicationDelegate { 

    var window: UIWindow? 

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { 
     // Override point for customization after application launch. 


     let rootViewController = self.window!.rootViewController 
     let mainStoryBoard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil) 

     let isUserLoggedIn:Bool = UserDefaults.standard.bool(forKey: "isUserLoggedIn") 
     if(!isUserLoggedIn){ 

      let loginViewController = mainStoryBoard.instantiateViewController(withIdentifier: "loginview") as! LoginVC 

      window!.rootViewController = loginViewController 
      window!.makeKeyAndVisible() 

     } 
     else{ 
      let protectedPage = mainStoryBoard.instantiateViewController(withIdentifier: "ViewController") as! ViewController 

      window!.rootViewController = protectedPage 
      window!.makeKeyAndVisible() 
     } 

     return true 
    } 
} 

Он успешно строить, Но у меня ошибка при запуске приложений. Об ошибке, как показано ниже

согласующего приложения из-за исключениями неперехваченного 'NSInvalidArgumentException', причина: 'Раскадровка() не содержит контроллер с идентификатором вида ''' LoginView

LibC++ ABI. dylib: прекращение с неперехваченным исключением типа NSException (lldb)

+0

Проверьте свой проект, как сказала ошибка - причина: «раскадровка() не содержит контроллер с идентификатором вида„LoginView“» – Amanpreet

+0

Уже добавить «LoginView» в идентификатору. Но он не читал – AlotJai

+0

Может быть причиной орфографии. проверьте один раз. – Amanpreet

ответ

1

Скорее всего, вы не установили идентификатор раскадровки вашего LoginVC. Выберите LoginVC в раскадровке и установите идентификатор раскадровки как «loginview». Смотрите изображение для справки

enter image description here

+0

Идентификатор раскадровки основан на имени класса? – AlotJai

3

в раскадровке выберите LoginVC и в окне инспектора предоставить идентификатор loginview в Раскадровка ID

+0

Уже добавьте 'loginview' в идентификатор. Я не уверен, почему он все еще дает ошибку. , – AlotJai

+0

Вы попробовали очистить проект и снова запустить –

+0

opps. я забыл установить идентификатор раскадровки. Кстати, спасибо за ответ. Цените это: D. , – AlotJai

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