Как расширить функцию UIImageView, чтобы асинхронная загрузка изображения с использованием ASIHTTP? - PullRequest
1 голос
/ 11 февраля 2011

Я пытаюсь сделать, чтобы TableViewController и TableCell имели изображение.

Хотя строка может загружать изображение из Интернета, я напрямую вызываю собственную функцию UIImageView.

А потом я просто устанавливаю изображение и показываю его, пока requestDidFininshed.

Но теперь у меня проблема с этим методом

Ошибка домена = ASIHTTPRequestErrorDomain Code = 6 «Невозможно установить соединение HTTP» UserInfo = 0x6a48880 {NSLocalizedDescription = Невозможно начать соединение HTTP}

Так что мне нужен кто-то, кто поможет мне решить эту проблему. Спасибо.


<code>
// UIImageView+AsyncLoadImage.h
<code>#import <Foundation/Foundation.h></code>
@interface UIImageView (AsyncLoadImage)
    -(void)asyncLoadWithNSURL:(NSURL *)url;
@end
<code> 
//  UIImageView+AsyncLoadImage.m
<code>#import "UIImageView+AsyncLoadImage.h"</code>
<code>#import "ASIHTTPRequest.h"</code>
@implementation UIImageView (AsyncLoadImage)
 -(void)requestFinished:(ASIHTTPRequest *)request
{
    NSData *data = [request responseData];
    [self.image initWithData:data];
}
 -(void)requestFailed:(ASIHTTPRequest *)request
{
    NSError *error = [request error];
    NSLog(@"error: %@", [error description]);
}
 -(void)asyncLoadWithNSURL:(NSURL *)url
{
    ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
    [request setDelegate:self];
    [request startAsynchronous];
}
@end

1 Ответ

1 голос
/ 11 февраля 2011

Нет явной проблемы в коде, который вы включили в свой вопрос.

Ошибка в том, что ASIHTTPRequest не может запустить соединение HTTP - наиболее вероятные причины в том, что что-то не так с URL, что-то не так с сервером, или ваше устройство не имеет сетевого соединения.

...