2016-09-02 5 views
0

Я не могу понять, как ссылаться на Swift VC из Objective C VC в проекте смешанного языка. Вот код Objective C:Ссылка на контроллер Swift View от контроллера представления Objective C

#import "NamesVC." 

... ([segue.identifier isEqualToString:@"peopleSegue"]){ 
     NamesVC *vc  = segue.destinationViewController; 
     vc.selEntity  = @"People"; 
     vc.delegateMethod= @"Admin"; 
     } 

Bridging Заголовок: Version10-Bridging-header.h

#ifndef Version10_Bridging_Header_h 
#define Version10_Bridging_Header_h 

#import "AppDelegate.h" 
#import "AdminTVC.h" 

Как вы import от Swift VC в класс Obj C?

+0

Спасибо за ответ. Я не хочу импортировать какой-либо код. Я просто хочу нажать Swift VC из Obj C VC. Например: VC.swift * vc = [[ViC.swift alloc] init]; vc = [self.storyboard instantiateViewControllerWithIdentifier: @ "HelpWeb"]; [self.navigationController pushViewController: vc animated: YES]; Мне нужно импортировать VC.swift в Obj C. Заголовок моста используется для ссылки на классы Obj C в классах Swift. – John

ответ

1

Импорт ProjectModuleName-swift.h заголовка внутри вашего файла .m, где вы хотите получить доступ к контроллеру Swift.

#import "ProjectModuleName-Swift.h" 

После того, что вы можете получить доступ к NamesVC внутри вашей цели с ViewController.

Подробнее об этом читайте Apple, documentation на Swift and Objective-C in the Same Project, внутри этой док читать о Импорт Swift в Objective-C

+0

Я думаю, что в этом случае вам нужно импортировать, как этот '#import" Version10-Swift.h "' –

+0

Спасибо за ответ. Я не хочу импортировать какой-либо код. Я просто хочу нажать Swift VC из Obj C VC. Например: VC.swift * vc = [[ViC.swift alloc] init]; vc = [self.storyboard instantiateViewControllerWithIdentifier: @ "HelpWeb"]; [self.navigationController pushViewController: vc animated: YES]; Мне нужно импортировать VC.swift в Obj C. Заголовок моста используется для ссылки на классы Obj C с помощью классов Swift. – John

+0

Что вы подразумеваете под «Я не хочу импортировать какой-либо код», я сказал вам импортировать только «ProjectModuleName-Swift.h» в файл цели c viewController.m, скажите мне одну вещь в Objective c, если вы хотите получить доступ к другому контроллеру из вашего ViewController, что вы делаете, очевидно, что вы всегда импортируете этот контроллер для использования внутри вашего файла. –

0

Импорт Swift в Objective-C

Вы должны импортировать Swift кода из этой цели в любой файл Objective-C .m в пределах этой цели с использованием этого синтаксиса и подставляя соответствующее имя:

#import "NamesVC.h" 
+0

Спасибо за ответ. Я не хочу импортировать какой-либо код. Я просто хочу запустить Swift VC из Obj C VC. Например: – John

0

Для тех, кто не найти решение меняющегося

"MyApp-Swift.h" to <MyApp-Swift.h> 

в моем Objective C .m файл, который я хотел ссылаться на мою Свифт класса

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