Как хранить значения CGRect в NSMutableArray? - PullRequest
108 голосов
/ 29 мая 2010

Как мне сохранить объекты CGRect в NSMutableArray, а затем получить их позже?

Ответы [ 4 ]

286 голосов
/ 29 мая 2010

Вам нужно обернуть структуры CG в NSValue классы. Итак:

NSMutableArray* array = [NSMutableArray mutableArray];
[array addObject:[NSValue valueWithCGRect:CGRectMake(0,0,10,10)]];
CGRect someRect = [[array objectAtIndex:0] CGRectValue];
12 голосов
/ 25 декабря 2013
CGRect rect = CGRectMake( 5, 5, 40, 30 );
NSString* rectAsString = NSStringFromCGRect( rect );
CGRect original = CGRectFromString( rectAsString );

Что вы думаете об этом способе хранения дат CGRect?

2 голосов
/ 11 ноября 2014

Мы храним объекты CGRect, CGPoint, CMTime в NSMutableArray,

[arrayName addObject:[NSValue valueWithCGPoint:MyCGPoint]]

[arrayName addObject:[NSValue valueWithCGRect:MyCGRect]]

[arrayName addObject:[NSValue valueWithCMTime:MyCMTime]]

[arrayName addObject:[NSValue valueWithCMTimeRange:MyCMTimeRange]]

1 голос
/ 12 сентября 2014
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);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...