Получение изображения от Objective C URL

<asp:Label ID="ServiceBeginDate" runat="server" Text='<%# (DataBinder.Eval(Container.DataItem, "ServiceBeginDate", "{0:yyyy}") == "0001") ? "" : DataBinder.Eval(Container.DataItem, "ServiceBeginDate", "{0:MM/dd/yyyy}") %>'>
</asp:Label>
50
задан sth 31 May 2009 в 12:41
поделиться

2 ответа

What you want is to get the image data, then initialize a UIImage using that data:

NSData * imageData = [[NSData alloc] initWithContentsOfURL: [NSURL URLWithString: @"http://myurl/mypic.jpg"]];
cell.image = [UIImage imageWithData: imageData];
[imageData release];

As requested, here's an asynchronous version:

dispatch_async(dispatch_get_global_queue(0,0), ^{
    NSData * data = [[NSData alloc] initWithContentsOfURL: [NSURL URLWithString: @"http://myurl/mypic.jpg"]];
    if ( data == nil )
        return;
    dispatch_async(dispatch_get_main_queue(), ^{
        // WARNING: is the cell still using the same data by this point??
        cell.image = [UIImage imageWithData: data];
    });
    [data release];
});
163
ответ дан 7 November 2019 в 10:29
поделиться

Хорошо, здесь есть кое-что не так:

  1. Преобразование из URL (url) в NSString (newImage) неверно, код на самом деле пытается загрузить содержимое « http: //myurl/mypic.jpg » в NSString.

  2. Метод -imageNamed принимает в качестве аргумента строку, которая является путем к локальному файлу, а не URL-адресом.

Вам нужно использовать объект NSData в качестве посредника, как в этом примере: http://blogs.oreilly.com/digitalmedia/2008/02/creating-an-uiimage-from-a-url.html

4
ответ дан 7 November 2019 в 10:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: