2016-04-07 13 views
8

Ho creato un oggetto NSIndexPath ma quando stampo il valore della sua proprietà length si mostrerà sempre il valore come 2.Perché la lunghezza NSIndexPath mostra sempre 2?

NSIndexPath *index = [NSIndexPath indexPathForItem:0 inSection:4]; 

{lunghezza = 2, path = 4-0}

Perché la lunghezza è sempre 2?

+0

lunghezza -> lunghezza del percorso indice stesso. 4 (primo) -0 (secondo). Ad ogni modo questo è già trattato nelle risposte qui sotto. – MadNik

risposta

13

Poiché il percorso dell'indice è composto da due indici: la sezione e il numero dell'articolo.

+0

grazie! Esistono casi in cui NSIndexPath ha una lunghezza diversa da 2? – rishu1992

+0

Sarà sempre 2 se utilizzato con una vista raccolta o vista tabella. Ma puoi usare NSIndexPath anche per altre cose. Quindi è possibile avere un percorso indice con un numero qualsiasi di indici. – rmaddy

+0

se si desidera modificarlo, è possibile farlo in questo modo myIndexPath = myIndexPath.indexPathByRemovingLastIndex() –

2

fondamentalmente NSIndexPath è combinazione di sezione e Row, quindi mostrerà lunghezza 2.

Problemi correlati