2012-04-17 17 views
8

Cosa c'è di sbagliato in questa istruzione IF?Dichiarazione IF obiettivo-C con condizione OR

if ([currentElement isEqualToString:@"aaa" || currentElement isEqualToString:@"bbb"]) 

XCode dice:

No visible @interface for 'NSString' declares the selector 'isEqualToString:isEqualToString:' 

Sono in una procedura NSXML Parser se può aiutare, ma penso che non è che il problema.

risposta

30

È necessario confrontare risultato di due chiamate di metodo:

if ([currentElement isEqualToString:@"aaa"] || [currentElement isEqualToString:@"bbb"]) 

Il codice che avete in realtà compila come

if ([currentElement isEqualToString:(@"aaa"||currentElement) isEqualToString:@"bbb"]) 

che è compilatore tenta di chiamare inesistente isEqualToString:isEqualToString: metodo NSString

+0

Sì ... sono un idiota. Posso dire a mia difesa che sono ancora un novizio per Objective-C ma ... ecco perché questo sito è per, naah? : D –

+0

@AlbertoSchiariti sì, nessun problema :) – Vladimir

Problemi correlati