it-roy-ru.com

"На экранах запуска не могут быть заданы имена пользовательских классов"

Я пытаюсь установить начальный контроллер представления в пользовательский класс. В предыдущих версиях это работало, но по какой-то причине я не могу сделать это сейчас. 

У меня есть класс UIViewController (IntroVC). В раскадровке я создал новый объект View Controller и установил для его класса (Identity Inspector -> Custom Class -> Class) значение IntroVC. IntroVC - это файл .Swift с функциями viewDidLoad() и didReceiveMemoryWarning() из class IntroVC: UIViewController

Вот скриншоты XCode 

Ошибка

 Error

IntroVC

 IntroVC

Раскадровка

 Storyboard

Кто-нибудь знает, как решить эту проблему? Что случилось с этой версией XCode? 

10
Ty Pavicich

Я сделал действительно простую ошибку. 

Эта ошибка произошла, когда пользовательский класс был установлен в LaunchScreen.storyboard. Я должен был установить свой собственный класс IntroVC в Main.storyboard.

Установка начального класса VC в LaunchScreen.storyboard для UIViewController и начального класса VC в Main.storyboard для IntroVC устранила проблему.

XCode 7.0.1 в порядке. Ошибка моя. 

11
Ty Pavicich

Просмотрите ваши контроллеры вида в Main.storyboard и убедитесь, что у вас нет того, для которого both установлен пользовательский класс:

 enter image description here

и проверил "Is Initial View Controller":

 enter image description here

Вы можете сделать только один или другой. Каким-то образом я по-прежнему проверял «Is Initial View Controller» по-прежнему по ошибке, и мне понадобилось время, чтобы выследить это!

1
Josh

Это происходит из-за того, что вы установили имя класса для файла LaunchScreen.Storyboard в Identity Inspector. Просто удалите имя класса, и оно будет работать нормально.

0
Ramakrishna

Убедитесь, что вы изменяете класс представления файла «LaunchScreen.xib» в инспекторе удостоверений. Это должен быть стандартный UIView, может быть, вы случайно установили класс контроллера представления.

0
itsprof