У меня проблема. У меня есть проект Old Objective C, и я хочу вызвать новую функцию Swift и объект, я создал файл "-Bridging-Header.h" и "-Swift.h"
было легко вызвать функцию от Swift до Objective C, но у меня есть проблема для обратного.
Итак, я создал простой класс "System.Swift"
import Foundation
@objc class System : NSObject {
@objc func printSome() {
println("Print line System");
}
}
теперь я стараюсь следовать документации здесь и внутри файла <... > - Swift.h я пишу это
@class System;
@interface System : NSObject
-(void)printSome;
@end
и я импортирую его внутри своего класса Objective C. На этом этапе внутри моего класса Objective C (в настоящее время UIViewController) моего Objective C Code я пытаюсь вызвать метод printSome:
- (void)viewDidLoad
{
[super viewDidLoad];
System * sis = [[System alloc] init];
[sis printSome];
//any additional setup after loading the view from its nib.
}
теперь у меня есть следующая ошибка:
Undefined символы для архитектуры i386: "_OBJC_CLASS _ $_ System", ссылка: objc-class-ref в "ObjectiveC_Class_That_Call_Swift_Object".o ld: символ (-ы) не найден для архитектуры i386 clang: error: linker команда с кодом выхода 1 (используйте -v для вызова вызова)
Кто-нибудь может мне помочь?
Относится ко всем.