Причина, по которой я выполняю динамическую загрузку классов, заключается в том, что я создаю один набор файлов, которые можно использовать в нескольких похожих проектах, поэтому выполнение #import и затем обычного создания экземпляра просто не будет работать.Динамические классы позволяют мне делать это, пока я могу вызывать методы в этих классах.Каждый проект имеет это в pch с другим именем "kMediaClassName", поэтому я могу динамически загружать разные классы в зависимости от проекта, в котором я нахожусь:
#define kMediaClassName @"Movie"
Вот код, который я использую для получения экземпляракласса динамически:
Class mediaClass = NSClassFromString(kMediaClassName);
id mediaObject = [[[mediaClass alloc] init] autorelease];
Затем я пытаюсь вызвать метод внутри этого динамического класса:
[mediaObject doSomething];
Когда я затем набираю это в Xcode, компилятор показывает предупреждение, чтоУ класса нет этого метода, хотя он и есть.Я вижу это прямо в моем файле Movie.h.Что здесь происходит?Как вызвать метод из динамически создаваемого класса?
А что, если мне нужно передать несколько аргументов?
[mediaObject loadMedia:oneObject moveThe:YES moveA:NO];
Заранее спасибо за помощь.