Sospetto che sia qualcosa di veramente semplice, ma sto cercando di ottenere un int che ho memorizzato in un dizionario e la riga sto usando questo .."Puntatore non compatibile alla conversione dei numeri interi che inizializza 'int' con un'espressione di tipo 'NSNumber *'"
int mapX = [NSNumber numberWithInt:[templateObject valueForKey:@"mapX"]];
Ma mi sta dando l'errore ...
puntatore Incompatibile a intero conversione invio di 'id' al parametro di tipo 'int'
e
puntatore incompatibile a integer conversione inizializzazione 'int' con un'espressione di tipo 'NSNumber *';
Se provo ...
NSNumber *mapX = [NSNumber numberWithInt:[templateObject valueForKey:@"mapX"]];
ho praticamente ottengo lo stesso errore. So che probabilmente sto usando la sintassi sbagliata, ma non sono sicuro di come altro scriverlo.
Grazie per qualsiasi aiuto.
"then [templateObject valueForKey: @" mapX "] non è neanche un int." - come potrebbe essere un intero ** del tutto? ** 'NSDictionary' può contenere solo oggetti, non scalari. –
preposizione errata – WDUK
"dovrebbe essere davvero [templateObject objectForKey: @" mapX "] se non si è certi che si sta usando la codifica del valore-chiave" - questo è anche falso, 'NSDictionary' sovrascrive' - valueForKey: 'a è equivalente a '- objectForKey:' se la stringa chiave non inizia con un simbolo '@' (mi sembra che la stringa 'mapX' non inizi con uno). –