Форум программистов, компьютерный форум CyberForum.ru

Программирование iOS/iPhone

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 17, средняя оценка - 4.88
o1eg_bitrix
0 / 0 / 0
Регистрация: 23.10.2012
Сообщений: 11
#1

Загрузить картинку по URL - Программирование iOS

06.11.2012, 07:34. Просмотров 2157. Ответов 4
Метки нет (Все метки)

Использовал следующие методы и все тщетно :

Objective-C
1
2
3
4
5
6
7
8
- (NSImage *)getImageURL:(NSString *)urlString {
NSURL *imageURL = [NSURL URLWithString:urlString];
NSImage *imageFromBundle = [[NSImage alloc] initWithContentsOfURL:imageURL];
return imageFromBundle;
}
 
NSImageView *imageView;
[imageView setImage:[self getImageURL:@"www.google.ru/logo.jpg"]];
Objective-C
1
2
3
NSString* imageURL = [NSString stringWithFormat: @"http://theimageurl.com/?id=%@", [[resultsEntries objectAtIndex:0] objectForKey: @"image_large"]];
NSData* imageData = [[NSData alloc]initWithContentsOfURL:[NSURL URLWithString:imageURL]];   
UIImage* image = [[UIImage alloc] initWithData:imageData];
Прописываю код в DetailViewController.m

Не одна из конструкций не проходит синтаксический контроль.

Подскажите наиболее безболезненный и быстрый путь, что бы прочитать картинку и вывести ее в ячейку cell.image!?

локальные картинки из проекта читаются и выводятся без проблем.

Спасибо...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.11.2012, 07:34     Загрузить картинку по URL
Посмотрите здесь:

URL-Scheme - Objective-C
Привет всем! Вопрос таков: нужно передавать и получать данные от сторонних приложений, как получать информацию каким приложениям можно...

Как загрузить близлежащие места? - Программирование iOS
Вечер добрый. Помогите пожалуйста. Как получить близлежащие места к выбранной точке на карте используя сервисы Facebook Places API или...

Как скачать сайт по URL? - Objective-C
люди я только начинаю разбирать в objecte не получается скачать код сайта думаю что всё делаю правильно а оно не работает ( инфу с любого...

Почему к url приписываются символы %0A%20%20 ? - Программирование iOS
Ссылку передаю из другого контроллера, передается без этих символов, нормальная url ссылка, а переходит уже по этой, неправильной и как...

Загрузка изображения через URL + UIActivityIndicatorView - Objective-C
хочу загрузить изображение через URL в сториборде вставил UIImageView и UIActivityIndicator, сделал свойства, но не понимаю, как...

Поддерживает ли приложение Google Переводчик URL Scheme? - Программирование iOS
Хочу добавить в своё приложение запуск приложения Google Переводчик с заданным текстом, но не могу найти описание параметров.

Можно ли загрузить список своих приложений в таблицу? Xcode/iOS - Программирование iOS
Я хочу загрузить список приложений в tableView, но не знаю если можно это сделать? Подскажите пожалуйста!

картинку загнать в четырёхугольник - Objective-C
Всем добрый вечер! Нужно написать такой метод, у которого на входе была бы картинка и массив из 8-ми чисел - координаты 4-х точек...

Загрузить приложение на сайт так, чтобы можно было открыть на ipad - Программирование iOS
Добрый день, господа программисты! Столкнулась сегодня с задачей шефа - "Загрузить приложение на сайт так, чтобы можно было открыть на...

Загрузить картинку .gif в Image, зная ее URL - Delphi
Что делать с gif - вообще никаких идей. Подскажите, кто знает. А с PNG пытаюсь так: var F:TFileStream; begin ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
06.11.2012, 08:09     Загрузить картинку по URL #2
o1eg_bitrix, забудьте о подгрузке картинок и каких либо других данных синхронно.
Простой способ для Вас - скачать себе AFNetworking с github'a, и воспользоваться категорями для асинхронной загрузки картинок и последующим засетчиванием их в UIImageView.
o1eg_bitrix
0 / 0 / 0
Регистрация: 23.10.2012
Сообщений: 11
06.11.2012, 08:40  [ТС]     Загрузить картинку по URL #3
Я объект "UIImageView" не использую на сцене или это критично!?
Мне нужно именно в ячейки таблицы вывести или высоту ячейки я не смогу поменять в зависимости от размеров картинки!?
zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
06.11.2012, 08:57     Загрузить картинку по URL #4
Ааа, я не посмотрел. Мак...
Ну тогда нужно смотреть что не так в коде. Но все равно, синхронные закачки - зло.
Max Patsy
курлык-курлык
85 / 94 / 3
Регистрация: 26.11.2009
Сообщений: 396
Записей в блоге: 1
06.11.2012, 10:21     Загрузить картинку по URL #5
Вот скачка картинки, но она загружется на девайс и отображается в ImageView

*.m
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#import "ViewController.h"
 
@interface ViewController ()
 
@end
 
@implementation ViewController
@synthesize img;
 
- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
}
 
- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}
 
- (IBAction)onDownload:(id)sender {
    //Definitions
    NSString * documentsDirectoryPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
    
    //Get Image From URL
    UIImage * imageFromURL = [self getImageFromURL:@"http://inventos.ru/wp-content/uploads/2012/09/%D0%BB%D0%BE%D0%B3%D0%BE_180%D1%85180_2.jpg"];
    
    //Save Image to Directory
    [self saveImage:imageFromURL withFileName:@"My Image" ofType:@"png" inDirectory:documentsDirectoryPath];
 
 
    
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    
    if ([paths count] > 0)
        NSLog(@"Documents directory: %@", [paths objectAtIndex:0] );
}
 
-(UIImage *) getImageFromURL:(NSString *)fileURL {
    UIImage * result;
    
    NSData * data = [NSData dataWithContentsOfURL:[NSURL URLWithString:fileURL]];
    result = [UIImage imageWithData:data];
    
    return result;
}
 
-(void) saveImage:(UIImage *)image withFileName:(NSString *)imageName ofType:(NSString *)extension inDirectory:(NSString *)directoryPath {
    if ([[extension lowercaseString] isEqualToString:@"png"]) {
        [UIImagePNGRepresentation(image) writeToFile:[directoryPath stringByAppendingPathComponent:[NSString stringWithFormat:@"%@.%@", imageName, @"png"]] options:NSAtomicWrite error:nil];
    } else if ([[extension lowercaseString] isEqualToString:@"jpg"] || [[extension lowercaseString] isEqualToString:@"jpeg"]) {
        [UIImageJPEGRepresentation(image, 1.0) writeToFile:[directoryPath stringByAppendingPathComponent:[NSString stringWithFormat:@"%@.%@", imageName, @"jpg"]] options:NSAtomicWrite error:nil];
    } else {
        NSLog(@"Image Save Failed\nExtension: (%@) is not recognized, use (PNG/JPG)", extension);
    }
}
 
-(UIImage *) loadImage:(NSString *)fileName ofType:(NSString *)extension inDirectory:(NSString *)directoryPath {
    UIImage * result = [UIImage imageWithContentsOfFile:[NSString stringWithFormat:@"%@/%@.%@", directoryPath, fileName, extension]];
    
    return result;
}
- (IBAction)onLoadToView:(id)sender {
    NSString * documentsDirectoryPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
    UIImage *imageFromWeb = [self loadImage:@"My Image" ofType:@"png" inDirectory:documentsDirectoryPath];
    [img setImage:imageFromWeb];
}
@end

*.h
Objective-C
1
2
3
4
5
6
7
8
#import <UIKit/UIKit.h>
 
@interface ViewController : UIViewController
- (IBAction)onDownload:(id)sender;
@property (weak, nonatomic) IBOutlet UIImageView *img;
- (IBAction)onLoadToView:(id)sender;
 
@end
Интерфейс состоит из текстового поля, которое я впрочем не использую и двух кнопок - загрузки картикни и ее отображения
Yandex
Объявления
06.11.2012, 10:21     Загрузить картинку по URL
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru