ฉันจะจัดเก็บออบเจ็กต์ CGRect ใน NSMutableArray ได้อย่างไรแล้วเรียกคืนในภายหลัง
ฉันจะจัดเก็บออบเจ็กต์ CGRect ใน NSMutableArray ได้อย่างไรแล้วเรียกคืนในภายหลัง
คำตอบ:
คุณต้องรวมโครงสร้าง CG ในNSValue
ชั้นเรียน ดังนั้น:
NSMutableArray* array = [NSMutableArray mutableArray];
[array addObject:[NSValue valueWithCGRect:CGRectMake(0,0,10,10)]];
CGRect someRect = [[array objectAtIndex:0] CGRectValue];
CGRect rect = CGRectMake( 5, 5, 40, 30 );
NSString* rectAsString = NSStringFromCGRect( rect );
CGRect original = CGRectFromString( rectAsString );
คุณคิดอย่างไรเกี่ยวกับวิธีนี้ในการจัดเก็บวันที่ CGRect?
เราเก็บCGRect
, CGPoint
, CMTime
วัตถุในNSMutableArray
,
[arrayName addObject:[NSValue valueWithCGPoint:MyCGPoint]]
[arrayName addObject:[NSValue valueWithCGRect:MyCGRect]]
[arrayName addObject:[NSValue valueWithCMTime:MyCMTime]]
[arrayName addObject:[NSValue valueWithCMTimeRange:MyCMTimeRange]]
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);