2010-06-22 9 views
5

tengo una aplicación con la siguiente categoría para NSString:iPhone simulador no vea mi categoría NSString

@interface NSDate(ISO8601Parsing) 



//This method is the one that does all the work. All the others are convenience methods. 

+ (NSDate *)dateWithString:(NSString *)str strictly:(BOOL)strict getRange:(out NSRange *)outRange; 

+ (NSDate *)dateWithString:(NSString *)str strictly:(BOOL)strict; 



//Strictly: NO. 

+ (NSDate *)dateWithString:(NSString *)str timeSeparator:(unichar)timeSep getRange:(out NSRange *)outRange; 

+ (NSDate *)dateWithString:(NSString *)str timeSeparator:(unichar)timeSep; 

+ (NSDate *)dateWithString:(NSString *)str getRange:(out NSRange *)outRange; 

+ (NSDate *)dateWithString:(NSString *)str; 



@end 

La categoría es en la aplicación final, no en una biblioteca estática. Cuando uso la aplicación en el iPhone (3GS con iOS4), no hay ningún problema con la aplicación y las pruebas. Cuando uso el simulador de iPhone, no se invocan mis métodos agregados. Depuración He visto que xcode 'omite' la llamada y devuelve nulo, muy extraño. ¿Alguna sugerencia? Gracias. Jean

+2

que iba a tratar de 'limpiar todos los objetivos' (fuera de la construcción menú) primero - puede tener diferentes bits de código a medio construir para el simulador y el dispositivo. Lo desinstalaría de ambos también, solo para estar seguro :) – deanWombourne

Respuesta

2

Tuve el mismo problema al usar el código generado por wsdl2objc (ver issue). Lo resolví cambiando el nombre de un método:

+ (NSDate *)dateWithString:(NSString *)str 

por ej.

+ (NSDate *)wsdl2objcDateWithString:(NSString *)str; 

Parece un conflicto entre el código anterior y una nueva API privada, pero no estoy seguro.

0

REHOS es correcta - Gracias

Sólo por la claridad extra para noobs como yo;

método de cambio de nombre en NSDate + ISO8601Parsing.m y .h uso del método renombrado

y

en
+(NSDate *)deserializeNode:(xmlNodePtr)cur

Cuestiones relacionadas