Создайте объект из NSString имени класса в Objective-C - программирование
Подтвердить что ты не робот

Создайте объект из NSString имени класса в Objective-C

Мне было интересно, могу ли я создать объект некоторого класса, если у меня есть имя класса в NSString. Я знаю, что это возможно на других языках, таких как ActionScript, С# и PHP...

Что-то вроде этого:

NSString *className = @"AwesomeViewController";
UIViewController *object = [[className alloc] initWithNibName:className bundle:nil];
4b9b3361

Ответ 1

Классы - это объекты первого класса в Obj-C. Вы можете получить объект класса из NSString с помощью функции NSClassFromString.

[[NSClassFromString(className) alloc] init...]