2014-10-05 3 views
1

У меня есть приложение iOS, которое я создаю в Xcode 6.0.1 на Yosemite 10.10. Я работаю над этим уже пару недель, и внезапно сегодня все пошло не так.Xcode 6.0.1 - Либо застревает на экране запуска, либо просто отображается черный экран. Ошибка вышла из ниоткуда

Когда я впервые запустил проект, я просто удалил значок запуска Xib, который был сгенерирован Xcode, а затем я установил свой начальный контроллер представления в Storyboard, и он работает нормально.

По какой-то причине сегодня все изменилось. Теперь, если я попытаюсь запустить приложение на своем iPhone 4 или любом из симуляторов, он просто показывает черный экран.

Итак, я подумал, что смогу исправить это, добавив экран запуска. Я создал файл xib под названием Launch Screen и установил его как «Файл экрана запуска» в общих настройках цели.

Теперь, когда я запускаю приложение, он показывает экран запуска, но он застревает там и никогда не переходит к контроллеру начального представления. Тогда он просто раз, и Xcode дает мне следующий запрос:

Lost connection to [insert device name here] 

ответ

1

Я имел это произошло из-за плохой код в viewDidLoad моего первоначального контроллера представления, что ни компилятор, ни статический анализатор пойманной. Я использую Свифт. Этот код был виновником:

var image = UIImage(named: "LoginUsernameIcon") 
var iconImageView = UIImageView(frame: CGRectMake(
    0.0, 0.0, 26.0, 26.0 
)) 
iconImageView.image = image 
usernameField.leftView = iconImageView 

image = UIImage(named: "LoginPasswordIcon") 
iconImageView.image = image 
passwordField.leftView = iconImageView 

Повторная инициализация iconImageView позволило мое приложение, чтобы запустить снова:

var image = UIImage(named: "LoginUsernameIcon") 
var iconImageView = UIImageView(frame: CGRectMake(
    0.0, 0.0, 26.0, 26.0 
)) 
iconImageView.image = image 
usernameField.leftView = iconImageView 

image = UIImage(named: "LoginPasswordIcon") 
iconImageView = UIImageView(frame: CGRectMake( // <<<<< 
    0.0, 0.0, 26.0, 26.0       // <<<<< 
))            // <<<<< 
iconImageView.image = image 
passwordField.leftView = iconImageView 

Так FWIW, я бы перепроверить свой код, чтобы увидеть, если у вас есть что-нибудь, что выглядит неисправной. Я не уверен, почему ошибка не создается Xcode.

+0

Действительно, в моем приложении проблема была в 'viewWillAppear' корневого контроллера. Таким образом, чтобы найти проблему, нужно прокомментировать 'viewDidLoad' и' viewWillAppear' и проверить. – iutinvg

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