2016-06-22 3 views
0

Я создал подкласс UIViewController под названием LoginController. У меня есть файл LoginController.xib, который содержит контроллер вида с несколькими элементами в нем. Я установил класс контроллера вида LoginController, и я установил свой главный интерфейс на LoginController. После запуска моего приложения я вижу свой заставку, а затем чистый черный экран. Мой класс LoginController имеет код по умолчаниюПользовательский подкласс UIViewController показывает только черный экран

class LoginController: UIViewController 
{ 
    override func viewDidLoad() 
    { 
     super.viewDidLoad() 

    } 

    override func didReceiveMemoryWarning() 
    { 
     super.didReceiveMemoryWarning() 
    } 
} 
+0

Xib-файл не загружен, можете ли вы отправить код инициализации LoginController? Почему вы не используете раскадровку? – lubilis

+0

Код, который я опубликовал, - это все код LoginController. Я не использую раскадровку, потому что (по крайней мере, для этой части) это не похоже на то, что я делаю. Это экран входа в систему, поэтому при нажатии кнопки входа в систему он должен быть проверен, а затем перейти к следующему экрану или отобразить сообщение об ошибке. Если у меня есть переход от кнопки входа в систему на следующий экран, я могу проверить его в prepareForSegue, но я не вижу способа остановить сеанс, если проверка не завершается. – robz

+0

Вы можете выполнить segue только после успешной проверки или использовать метод toPerformSegueWithIdentifier для остановки перехода segue, если проверка не завершена. Это правильный подход. Если вы все равно не хотите его использовать, вам следует загрузить xib-файл в метод viewDidLoad или вручную запустить LoginViewController из AppDelegate с помощью метода initWithNibName – lubilis

ответ

1

Я только что создал новый проект xcode. Мои результаты абсолютно нормальные. Поэтому я предполагаю, что это связано с тем, что вы не устанавливаете LoginController.xib в качестве начального xib для загрузки?

+0

Экран не станет белым, когда я это сделаю. – robz

+0

Установили ли вы LoginController как начальный контроллер просмотра при запуске приложения? или вы можете добавить строку печати под 'super.viewDidLoad', чтобы проверить, загружен ли LoginController или нет. –

+0

@robz Я только что создал новый проект xcode. Мои результаты абсолютно нормальные. Поэтому я предполагаю, что это связано с тем, что вы не устанавливаете LoginController.xib в качестве начального xib для загрузки? –

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