2017-06-02 16 views
-1

データが、常にゼロをiはURLからUITableViewCellのUIImageViewに画像を読み込む方法は?

NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://upload.wikimedia.org/wikipedia/commons/thumb/6/6b/American_Beaver.jpg/220px-American_Beaver.jpg"]]; 

ようにハードコードとしてもそれが示す*テーブルビューのセルにJSONやディスプレイから画像をフェッチしようとするが、データに変換しつつ、NSDataのためnill

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.imageView.image = [UIImage imageWithData: data]; 
    }); 
}); 

なりますデータ変数にnilを表示します

私は何か間違っていますか?同じための他の最良の方法?

+0

あなたはこのURLでhttp://upload.wikimedia.org/wikipedia/commons/thumb/6/6b/American_Beaver.jpg/220px-American_Beaver.jpgを試してみたのですか? –

答えて

1

SDWebImageを使用すると、画像の遅延読み込みを行うことができます。

#import <SDWebImage/UIImageView+WebCache.h> 

[cell.imageView sd_setImageWithURL:[NSURL URLWithString:IMAGE_URL] 
      placeholderImage:[UIImage imageNamed:@"placeholder.png"]]; 
0

このコードは動作しています.Jsonの画像URLが間違っている可能性があります。

dispatch_async(dispatch_get_global_queue(0,0), ^{ 
      NSData * data = [[NSData alloc] initWithContentsOfURL: [NSURL URLWithString: @"http://upload.wikimedia.org/wikipedia/commons/thumb/6/6b/American_Beaver.jpg/220px-American_Beaver.jpg"]]; 
      if (data == nil) 
       return; 
      dispatch_async(dispatch_get_main_queue(), ^{ 
       // WARNING: is the cell still using the same data by this point?? 
       UIImage *image = [UIImage imageWithData:data]; 
       NSLog(@"%@",image); 

      }); 
     }); 
+0

URLは間違いなく間違っています質問に2つのdiff URLを入れて – sss

+0

このコードはうまくいっていませんか? –

関連する問題