error de selector no reconocido en los métodos de un subproyecto
-
12-12-2019 - |
Pregunta
Agregué una biblioteca de terceros como subproyecto siguiendo los pasos en la sección "Uso" del siguiente enlace
http://cocoanetics.github.com/DTCoreText/
Sin embargo, después de agregar el subproyecto, mi proyecto se compila correctamente, pero no puedo llamar a ningún método definido en el subproyecto y recibo los siguientes errores:
[NSConcreteAttributedString initWithHTMLData:documentAttributes:]: unrecognized selector
sent to instance 0x71141e0
2012-10-01 17:34:30.600 final_try[7785:11303] *** Terminating app due to uncaught
exception NSInvalidArgumentException', reason: '-[NSConcreteAttributedString
initWithHTMLData:documentAttributes:]: unrecognized selector sent to instance 0x71141e0
*** First throw call stack:
(0x1971012 0x1796e7e 0x19fc4bd 0x1960bbc 0x196094e 0x22a4 0x1f1e 0x6db7b7 0x6dbda7
0x6dcfab 0x6ee315 0x6ef24b 0x6e0cf8 0x1deedf9 0x1deead0 0x18e6bf5 0x18e6962 0x1917bb6
0x1916f44 0x1916e1b 0x6dc7da 0x6de65c 0x1c9d 0x1bc5 0x1)
libc++abi.dylib: terminate called throwing an exception
El archivo de implementación tiene el siguiente código:
NSString *fileName = [[NSBundle mainBundle] pathForResource:@"mailBody1" ofType:@"txt"];
NSString *str1 = [NSString stringWithContentsOfFile:fileName encoding:NSUTF8StringEncoding error:nil];
str1 = [str1 gtm_stringByUnescapingFromHTML];
NSData *data = [str1 dataUsingEncoding:NSUTF8StringEncoding];
_html = str1;
NSAttributedString *string = [[NSAttributedString alloc] initWithHTMLData:data documentAttributes:NULL];
NSLog(@"%@",[string plainTextString]);
NSLog(@"%@",string);
return self;
Solución 2
arreglado !!Solo necesitaba agregar la biblioteca estática "libdtcoretext.a" debajo de la sección "Link Binary With Biot Baries" en Mi Aplicación Target
Otros consejos
Tal vez intente cambiar initWithHTMLData
a initWithHTML
?Entonces algo como esto:
NSAttributedString *string = [[NSAttributedString alloc] initWithHTML:data documentAttributes:NULL];
No creo que exista un método como lo llamas.
El método al que me refiero se puede encontrar en este enlace.
Otra solución que podría ser requerida, que no sea la respuesta de Jerry para asegurar que LibdTcoretext.a está vinculada es agregar "-OBJC" a otras banderas de enlazadores debajo de la configuración de compilación del proyecto.