Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование iOS/iPhone
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.54/13: Рейтинг темы: голосов - 13, средняя оценка - 4.54
o1eg_bitrix
0 / 0 / 0
Регистрация: 23.10.2012
Сообщений: 11
1

Загрузить картинку по URL

06.11.2012, 07:34. Просмотров 2371. Ответов 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!?

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

Спасибо...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.11.2012, 07:34
Ответы с готовыми решениями:

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

Кликая по label с емайлом, нужно открыть почтовый клиент, или загрузить url, если label содержит url
Кликая по label с емайлом, нужно открыть почтовый клиент, или загрузить url,...

Невозможно загрузить указанный URL
Помогите решить вопрос "Невозможно загрузить указанный URL"

Невозможно загрузить указанный url
Не могу понять, почему файрбаг выводит сообщение "невозможно загрузить...

Загрузить картинку
Здравствуйте, помогите пожалуйста загрузить картинку с помощью addPixMap()....

4
zulkis
684 / 611 / 43
Регистрация: 13.01.2011
Сообщений: 1,724
06.11.2012, 08:09 2
o1eg_bitrix, забудьте о подгрузке картинок и каких либо других данных синхронно.
Простой способ для Вас - скачать себе AFNetworking с github'a, и воспользоваться категорями для асинхронной загрузки картинок и последующим засетчиванием их в UIImageView.
1
o1eg_bitrix
0 / 0 / 0
Регистрация: 23.10.2012
Сообщений: 11
06.11.2012, 08:40  [ТС] 3
Я объект "UIImageView" не использую на сцене или это критично!?
Мне нужно именно в ячейки таблицы вывести или высоту ячейки я не смогу поменять в зависимости от размеров картинки!?
0
zulkis
684 / 611 / 43
Регистрация: 13.01.2011
Сообщений: 1,724
06.11.2012, 08:57 4
Ааа, я не посмотрел. Мак...
Ну тогда нужно смотреть что не так в коде. Но все равно, синхронные закачки - зло.
1
Max Patsy
курлык-курлык
85 / 94 / 8
Регистрация: 26.11.2009
Сообщений: 396
Записей в блоге: 1
06.11.2012, 10:21 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
Интерфейс состоит из текстового поля, которое я впрочем не использую и двух кнопок - загрузки картикни и ее отображения
1
06.11.2012, 10:21
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.11.2012, 10:21

Загрузить картинку в БД
Как загрузить картинку в бд? Точнее как прописать ее в insert, к примеру,просто...

Загрузить картинку
Hello guys =) Пишу локальный сервер, использую IdHTTPServer1, на...

Загрузить картинку в БД
Как сделать это програмно ? Есть база данных Access, есть таблица и в ней поле...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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