2015-11-28 1 views
0

В моем проекте XCode, который реализует структуру MultipeerConnectivity, у меня есть segue между двумя ViewControllers, который запускается программно после того, как MPCHandler успешно устанавливает соединение с другим одноранговым узлом. После выполнения segue конечный VC появляется полностью пустой (все белые). Однако, если я попытаюсь получить доступ к целевому VC с помощью кнопки (с переходом segue непосредственно от кнопки до целевого VC), она появляется как должна. Вот строка кода, который выполняет SEGUE:Бланк ViewController после программного выполнения segue в XCode

performSegueWithIdentifier("seg_wait", sender: self) 

Так что, да, я знаю, как выполнить перетекает и, да, я уверен, идентификатор уникален и является таким же, как в раскадровке. У меня было много переходов во многих моих проектах, и в первый раз я столкнулся с такой проблемой. Кто-нибудь сталкивался с такой проблемой? Любые идеи о том, как его решить?

+0

Выполняете ли вы свой переход из нити, отличной от UI? –

ответ

3

Обновления пользовательского интерфейса всегда должны выполняться по основной теме («закон»). Поэтому попробуйте обернуть звонок:

dispatch_async(dispatch_get_main_queue(), { 
    performSegueWithIdentifier("seg_wait", sender: self) 
}) 
+1

Благодарю вас. К сожалению, я не могу проголосовать за ваш ответ UP, но он решил мою проблему. – EBDOKUM

+0

Рад помочь вам! – zisoft

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