Ecco cosa voglio fare:Come si memorizza un NSRange in un NSMutableArray o in un altro contenitore?
NSRange r = NSMakeRange(0,5);
id a = [NSMutableArray a];
[a addObject: r]; // but NSRange is not a NSObject *
Con un valore booleano, userei codice come questo:
[a addObject: [NSNumber numberWithBool: YES]];
o con un numero intero:
[a addObject: [NSNumber numberWithInteger: 3]];
Allora qual è il equivalente a NSRange
? Quello che non voglio veramente fare è creare la mia sottoclasse di NSObject
per raggiungere questo obiettivo. Sicuramente c'è un modo con quello che Apple ha già fornito?
Perché NSValue può memorizzare NSRange ma NSArray non è in grado di memorizzare? – antonio081014
Perché 'NSArray' può solo memorizzare oggetti. 'NSRange' non è un oggetto, ma puoi racchiuderlo con' NSValue' in modo che possa essere usato da 'NSArray',' NSDictionary' ecc. –
mentre itera tramite l'array NSMutable, NSRange r = a [i] .rangeValue che genera l'errore come il valore dell'intervallo di proprietà non trovato sul tipo id ... –