Как получить CGSizes изображений в NSArray
У меня есть NSArray
который содержит NSString
с изображениями URL, вот так:
NSArray *array = [NSArray arrayWithObjects:@"http://graphics8.nytimes.com/images/2014/07/22/blogs/20140722-lens-mark-slide-SG5C/20140722-lens-mark-slide-SG5C-custom1.jpg", @"http://graphics8.nytimes.com/images/2014/07/22/blogs/20140722-lens-mark-slide-SG5C/20140722-lens-mark-slide-SG5C-custom2.jpg", @"http://graphics8.nytimes.com/images/2014/07/22/blogs/20140722-lens-mark-slide-6N62/20140722-lens-mark-slide-6N62-blog480.jpg", nil];
Как я могу получить CGSize
каждого imageUrl
?
Я знаю, как получить размер одного imageUrl примерно так:
UIImage *image = [UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://graphics8.nytimes.com/images/2014/07/22/blogs/20140722-lens-mark-slide-SG5C/20140722-lens-mark-slide-SG5C-jumbo.jpg"]]];
CGSize imageSize = image.size;
1 ответ
Решение
for(NSString *stringURL in array)
{
UIImage *image = [UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:stringURL]]];
CGSize imageSize = image.size;
}
Я бы не советовал делать это в основной ветке.
Если вы хотите получить массив размеров, вы должны сделать следующее:
NSMutableArray *sizes = [NSMutableArray array];
for(NSString *stringURL in array)
{
UIImage *image = [UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:stringURL]]];
CGSize imageSize = image.size;
[sizes addObject:[NSValue valueWithCGSize:imageSize];
}
После этого вы можете получить CGSize
следующим образом:
CGSize imageSize = [sizes[index] CGSizeValue];