كيف يمكنني احتواء كل سلسلة لمجموعة?
سؤال
أحاول تحويل جيوبوينت إلى صفيف بواسطة جيوبوينت إلى سلسلة إلى صفيف.أريد استخدام هذه المصفوفة لرسم متعدد الخطوط في مجموعة الخرائط.الآن يمكنني تحويل إلى سلسلة ولكن لا يمكن أن تحتوي على مجموعة.كيف يمكنني احتواء كل سلسلة إلى مجموعة هل هناك طريقة أخرى لاستخدام النقطة الجغرافية لرسم متعدد الخطوط في مجموعة الخرائط?
- (void)updateLocations {
CGFloat kilometers = self.radius/1000.0f;
PFQuery *query = [PFQuery queryWithClassName:@"Location"];
[query setLimit:1000];
[query whereKey:@"location"
nearGeoPoint:[PFGeoPoint geoPointWithLatitude:self.location.coordinate.latitude
longitude:self.location.coordinate.longitude]
withinKilometers:kilometers];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
if (!error) {
static NSNumberFormatter *numberFormatter = nil;
if (numberFormatter == nil) {
numberFormatter = [[NSNumberFormatter alloc] init];
numberFormatter.numberStyle = NSNumberFormatterDecimalStyle;
numberFormatter.maximumFractionDigits = 6;
}
//NSArray *path = [objects valueForKey:@"location"]; //dictionary to array!!!
//NSLog(@"%@ %@",objects,path);
NSMutableArray *muarray;
for (PFObject *object in objects) {
PFGeoPoint *geoPoint = object[@"location"];
NSString *string = [NSString stringWithFormat:@"{%@, %@}",
[numberFormatter stringFromNumber:[NSNumber numberWithDouble:geoPoint.latitude]],
[numberFormatter stringFromNumber:[NSNumber numberWithDouble:geoPoint.longitude]]];
NSLog(@"%@",string);
[muarray addObject:string]; //I'm try this but it's fail.
NSLog(@"%@",muarray);
}
}
}];
}
المحلول
تحتاج إلى إنشاء مصفوفة لإضافة السلاسل إليها.إذا كنت تفعل إنشاء NSMutableArray
وتعيينه إلى muarray
أنت في الأساس تضيف السلسلة إلى nil
الذي لا يفعل شيئا.
NSMutableArray *muarray = [NSMutableArray array];
for (PFObject *object in objects) {
PFGeoPoint *geoPoint = object[@"location"];
NSString *string = [NSString stringWithFormat:@"{%@, %@}",
[numberFormatter stringFromNumber:[NSNumber numberWithDouble:geoPoint.latitude]],
[numberFormatter stringFromNumber:[NSNumber numberWithDouble:geoPoint.longitude]]];
NSLog(@"%@",string);
[muarray addObject:string]; //I'm try this but it's fail.
NSLog(@"%@",muarray);
}
لا تنتمي إلى StackOverflow