Я пытаюсь объединить два плагина, написанных на Objective- C. У меня есть Plugin1 и Plugin2, которые работают независимо друг от друга. Я пытаюсь добавить код Plugin2.m в мою папку Plugin1 Classes и выполнять оба одновременно.
Когда я это делаю, кажется, сначала выполняется Plugin1.m, потому что у него есть вызовы IBAction а Plugin2.m нет? Это нормально, но я бы хотел запустить Plugin2.m в функции в Code1.m. Итак, в приведенном ниже коде, когда инициируется вызов IBAction в Plugin1, я хотел бы, чтобы он выполнял то, что обычно делает Plugin2, а затем продолжал использовать методы Plugin1.
Plugin1.h:
#import Plugin2.h
@interface Plugin1: NSWindowController {
...
}
+(void) Plugin2;
@end
Plugin1.m:
#import "Plugin1.h"
#import "Plugin2.h"
@implementation Plugin1
-(id) loadPlugin1
{
...
}
-(IBAction) computeStuff:(id)sender
{
[self Plugin2];
//Plugin2* testRun = [Plugin2 alloc] init];
...do other stuff
}
@end
Plugin2.h
@interface Plugin2 : PluginFilter {
...
}
@end
Plugin2.m:
#import Plugin2.h
@implementation Plugin2
-(void) initPlugin
{
...
}
@end
К сожалению, я не могу устранить это изнутри Xcode, я мне нужно установить и протестировать плагин в моей программе для тестирования. Но когда я смотрю на консоль и пробую описанное выше, я получаю "- [Plugin1 Plugin2]: неопознанный селектор отправлен в экземпляр 0x7 ....