Функция из класса Swift не видна классу Objective-C - PullRequest
0 голосов
/ 11 июня 2018

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

PhotoViewController.swift:

@objc class PhotoViewController: UIViewController {
    // other methods and variables

    postViewController = // defined
    postViewController.ingestViewController = self

    @objc public func submit(image: UIImage) {
        // does stuff
    }
}

PostViewController.h:

@class PhotoViewController;

@interface PostViewController : UIViewController
@property (nonatomic, strong) PhotoViewController *ingestViewController;
@end

PostViewController.m:

#import "MyProject-Swift.h"
@class PhotoViewController;

@interface PostViewController ()

@end

@implementation PostViewController

// other code

- (void)_done {
    [self.ingestViewController submit:self.scan];
}
@end

Я продолжаю получать сообщение об ошибке: No visible @interface for 'PhotoViewController' declares the selector 'submit:'.Я также пытался сделать PhotoViewController общедоступным, и это не решило мою проблему.

...