2010-06-01 4 views
45

Me preguntaba si podría crear un objeto de alguna clase si tengo el nombre de la clase en un NSString. Sé que esto es posible en otros lenguajes como ActionScript, C# y PHP ...Crear objeto de NSString del nombre de clase en Objective-C

Algo como esto:

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

Respuesta

104

clases son objetos de primera clase en Objective-C también. Puede obtener el objeto de clase de un NSString con el NSClassFromString function.

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

trabajo como un encanto :) –

+28

y al revés es: NSLog (@ "% @", NSStringFromClass ([clase obj])); – neoneye

+0

¿Es una respuesta débil? – zszen

Cuestiones relacionadas