Errore -[__NSArrayI isEqualToString:]: Come risolverlo

Questo errore compare quando interagiamo con un Array e cerchiamo di estrarre un dato da esso.

A me capita quando uso MagicalRecord, salvo il risultato di una ricerca in un array e poi lo uso ad esempio su un Label per impostare, nella maggior parte dei casi, il testo con il contenuto del campo “Titolo” del database.

NSString *titolo = [[arrayConDati valueForKey:@"Titolo"]];
label.text = titolo;

Ecco l’errore comparire! In realtà con il sistema del Breakpoint spiegato nell’articolo precedente, potrete capire esattamente la riga dell’errore.

La soluzione è più semplice di quello che pensiate:

NSString *titolo = [[arrayConDati valueForKey:@"Titolo"] objectAtIndex:0];

Aggiungendo “objectAtIndex:0” l’errore scomparirà in quanto direte su quale indice andare a prendere il valore con chiave “Titolo”, ovvero al primo: lo 0 (zero).

Se questo sistema non risolve il vostro caso allora scrivetemelo, così cerco la soluzione e la posto in questo articolo!

Annunci

, , , , , ,

  1. Lascia un commento

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger hanno fatto clic su Mi Piace per questo: