Я использую UITableViewCell по умолчанию. Я хочу установить изображение на ячейку с моего локального сервера ... cell.imageView.image - PullRequest
2 голосов
/ 18 октября 2010
BLImageCache *sharedImageCache = [BLImageCache sharedInstance];
NSDictionary *dictionary = [NSDictionary dictionaryWithObjectsAndKeys:indexPath ,@"IndexPath", nil] ;
NSString *urlString;
urlString = [[mNewsArray objectAtIndex:indexPath.row] objectForKey:@"imgUrl"];
urlString =[urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
UIImage *image=[sharedImageCache imageForURL:urlString];
if(image==nil)
{
    urlString = [urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

   [sharedImageCache loadImageFromURL:[NSURL URLWithString:urlString] sender:self context:(NSDictionary*)dictionary];
}
else{
    cell.imageView.image =image;
    cell.imageView.contentMode = UIViewContentModeScaleAspectFit;       
}

Приложение аварийно завершает. Может кто-нибудь сказать мне, что я делаю неправильно, есть ли проблема, связанная с памятью ...

-(void)didLoadImage:(UIImage *)inImage contextInfo:(void *)inContext
{
    if(inImage )
    {
        NSIndexPath *indexPath= [(id)inContext objectForKey:@"IndexPath"];

        UITableViewCell *cell=[mTableView cellForRowAtIndexPath:indexPath];

        inImage=[inImage resizeImagewithwidth:69 height:67];

        cell.imageView.image=inImage;
    }

}   

1 Ответ

1 голос
/ 18 октября 2010

Обратный след поможет. Где он падает?

Проблема, которую я сразу вижу, заключается в том, что при удаленной загрузке вы дважды экранируете urlString. Кроме того, если urlString окажется равным нулю, вы получите сбой при попытке конвертировать его для создания NSURL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...