Мой проект iOS содержит как код цели-кода, так и быстрый код.вызов метода класса объектива-c в swift
Скажем, у меня есть класс с именем Task
, он содержит метод классаdo
:
@interface Task: NSObject
+ (void) doSomething:(NSString *) value;
@end
Вышеуказанное заявление @interface находится в Task.h файл. Другие классы-c-классы могут вызвать метод без каких-либо проблем.
Мой быстры код хотите вызвать метод doSomething
,
Task.doSomething(“do task now!”)
Но выше строка кода получить следующее сообщение об ошибке компилятора:
‘Task.Type’ does not have a member named ‘doSomething’.
Почему? Каков правильный способ вызова метода класса object-c в быстром коде?
(Там нет проблем с сгенерированными мостиковыми интерфейсами между Objective-C и быстрым.)
Это может быть только тип введенного кода, но для объявления метода требуется точка с запятой в интерфейсе obj-c. – keithbhunter
Я просто забыл добавить точку с запятой, у меня точка с запятой в моем объектно-c-коде. – user842225
Можете ли вы уточнить, в каком файле указано объявление @interface, которое вы указали? Он должен быть в файле .h, чтобы быть видимым. Являются ли другие классы объектно-с способными вызвать метод? –