#ios #objective-c #nsmutablearray #nsdictionary #mktileoverlay
#iOS #objective-c #nsmutablearray #nsdictionary #mktileoverlay
Вопрос:
У меня есть NSDictionnary внутри NSMutableArray (dateArrayURL)
Это выглядит так :
dateArrayURL: (
{
date = "2016-10-04 13:00:00 0000";
urlImage = "http://www.xxx/XX/XX.jpg";
},
{
date = "2016-10-04 12:45:00 0000";
urlImage = "http://www.xxx/XX/XX.jpg";
},
{
date = "2016-10-04 12:30:00 0000";
urlImage = "http://www.xxx/XX/XX.jpg";
},
{
date = "2016-10-04 12:15:00 0000";
urlImage = "http://www.xxx/XX/XX.jpg";
},
Обратите внимание, что изображения URL различны для каждой даты.
Теперь я хотел бы создать MKTileOverlay для каждой даты / URL, которые у меня есть в моем MutableArray, с помощью следующего метода :
tileOverlay = [[MKTileOverlay alloc] initWithURLTemplate:urlTemplate];
Должен ли я выполнять цикл для каждого моего элемента в массиве и создавать MKTikeOverlay с соответствующим URL-адресом?
Как я могу это сделать, я застрял при доступе к элементам в словаре / массиве.
Комментарии:
1. Подсказка для цикла:
for (NSDictionary *aDict in dateArrayURL){NSString *urlStr = aDict[@"urlImage"]; NSLog(@"urlStr: %@", urlStr);}
2. Хорошо, теперь я перебираю каждый свой URL-адрес из словаря. Что мне нужно, так это динамически создавать массив MKTileOverlay, инициализированный во время цикла с каждым URL-адресом.
3.
NSMutableArray *allTileOverlay = [[NSMutableArray alloc] init]; for (...){{MKTileOverlay *anOverlay = [[MKTileOverlay alloc] initWithURLTemplate:urlStr]; [allTileOverlay addObject:anOverlay];
}`?4. Именно то, что я искал, я не знаю, почему я был смущен, мне нужно больше практики с массивами / словарем
Ответ №1:
Этот вопрос решается благодаря @Larme, который помог мне в комментариях.