2013-03-15 3 views
1

Я следовал этот учебник, чтобы понять, разматывает перетекаетразматывает Segue Выпуск

http://pragmaticstudio.com/blog/2013/2/5/unwind-segues

Все отлично работает до конца:

- (IBAction)completeSignIn:(UIStoryboardSegue *)segue { 
    DSTSignInViewController *signInVC = segue.sourceViewController; 
    self.greetingLabel.text = signInVC.signInName; 
} 

Я получаю ошибку «Неизвестное имя типа„DSTSignInViewController“

+0

Это ошибка времени выполнения или ошибка времени компиляции? Если это время выполнения, включен ли 'DSTSignInViewController.m' в вашу цель? –

+0

Да, он включен в мою цель .. Должен ли я импортировать DSTSignInViewController, но я думал, что не импортирование - это точка разворота segue. –

+0

Если вы ссылаетесь на него, вам нужно его импортировать, иначе компилятор не знает, что он существует. Unwind segues не имеет никакого отношения к тому, импортируете ли вы заголовок. –

ответ

1

Основываясь на обсуждении в комментариях ... Похоже, вы хотите что-то вроде следующего:

@protocol DSTSSignInController 

@property (nonatomic, strong) NSString signInName; 

@end 

А потом

- (IBAction)completeSignIn:(UIStoryboardSegue *)segue { 
    UIViewController<DSTSSignInController> *signInVC = segue.sourceViewController; 
    self.greetingLabel.text = signInVC.signInName; 
} 

Таким образом, вы можете просто импортировать заголовок, который определяет протокол DSTSSignInController и не DSTSignInViewController или какие-либо другие возможные реализации/конформеры.

+0

спасибо, да, мне нужно импортировать DSTSignInViewController.h –

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