2010-05-29 14 views

risposta

278

È necessario avvolgere le strutture CG nelle classi NSValue. Quindi:

NSMutableArray* array = [NSMutableArray mutableArray]; 
[array addObject:[NSValue valueWithCGRect:CGRectMake(0,0,10,10)]]; 
CGRect someRect = [[array objectAtIndex:0] CGRectValue]; 
+0

buono! NSValue è così utile ... grazie – Joey

+0

altri esempi qui: http://iosdevelopertips.com/cocoa/storing-cgpoint-cgsize-and-cgrect-in-collections-using-nsvalue.html – WINSergey

12
CGRect rect = CGRectMake(5, 5, 40, 30); 
NSString* rectAsString = NSStringFromCGRect(rect); 
CGRect original = CGRectFromString(rectAsString); 

Cosa ne pensi in questo modo per memorizzare le date CGRect?

1
Store string in array.and then get back string and convert that in CGRect back as per the need. 
CGRect rect = CGRectMake(5, 5, 40, 30); 
NSString* rectAsString = NSStringFromCGRect(rect); 
NSMutableArray* array = [NSMutableArray mutableArray]; 
[array addObject:rectAsString]; 

For converting string in CGRect back use:- 
CGRect rect9 = CGRectFromString(rectAsString); 
2

salviamo le CGRect, CGPoint, CMTime oggetti in una NSMutableArray,

[arrayName addObject:[NSValue valueWithCGPoint:MyCGPoint]]

[arrayName addObject:[NSValue valueWithCGRect:MyCGRect]]

[arrayName addObject:[NSValue valueWithCMTime:MyCMTime]]

[arrayName addObject:[NSValue valueWithCMTimeRange:MyCMTimeRange]]

Problemi correlati