2016-05-05 7 views
1

iOSでJSONファイルを解析していますが、テーブルビューで要素を取得していますが、テーブルビュー要素を取得するために(prepareForSegue)このコード行で私の辞書から画像を取得すると「認識できないセレクタ」エラーが発生する

unrecognized selector sent to instance 0x7fa3427c5b20 2016-05-05 05:08:43.287 MovieClub[4845:212195] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFString size]: unrecognized selector sent to instance 0x7fa3427c5b20'

::と私はこのエラーを取得actuatlitDetailの

self.postt.image =[self.actuatlitDetail objectForKey:@"poster_240x342"]; 
+0

poster_240x342とは画像またはURLの名前は? –

+0

私たちがあなたを助けるためにもっとコードを共有してください。 –

+0

目的は受け付けません –

答えて

0

そのURL値を、以下のコードを取得し、

NSString *imageurl = [self.actuatlitDetail objectForKey:@"poster_240x342"]; 
NSString *encodedUrlString = [imageurl stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; 
NSURL *imageURL = [NSURL URLWithString: encodedUrlString]; 
NSData *imageData = [NSData dataWithContentsOfURL:imageURL]; 
UIImage *imag = [UIImage imageWithData:imageData]; 
self.postt.image = imag; 

は、その有用

+0

そのリモートイメージのURLです。この値は文字列またはURL形式を取得:あなたは、テープのコード行を使用すると、してくださいすることができIMAGEURLからのImageDataを取得する必要があり、その後、画像データ –

+0

で画像を設定 –

+0

[「poster_240x342」@ self.actuatlitDetail objectForKey]を@MuhammadAdnanしてください? –

1

[self.actuatlitDetail objectForKey:@"poster_240x342"]あればリターンは、その後、

NSString *imageURLString = [self.actuatlitDetail objectForKey:@"poster_240x342"]; 
self.postt.image = [UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:imageURLString]]]; 

あなたは、バックグラウンドで画像を読み込むことができ、その後URLを表すNSStringのされている場合は、

NSURL *imageURL = [self.actuatlitDetail objectForKey:@"poster_240x342"]; 
self.postt.image = [UIImage imageWithData:[NSData dataWithContentsOfURL:imageURL]]; 

を使用することができますNSURLを願っ

__weak typeof(self) weakSelf = self; 
dispatch_queue_t aQueue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); 
dispatch_async(aQueue, ^{ 
    NSURL *imageURL = [weakSelf.actuatlitDetail objectForKey:@"poster_240x342"]; 
    UIImage *image = [UIImage imageWithData:[NSData dataWithContentsOfURL:imageURL]]; 
    dispatch_async(dispatch_get_main_queue(), ^{ 
     weakSelf.postt.image = image; 
    }); 
}); 
+0

メインスレッドにデータをロードしないでください。 – rmaddy

0

画像のパスを設定する次に従います:

NSData * imageData = [[NSData alloc] initWithContentsOfURL: [NSURL URLWithString: @"Your image url string"]]; 
UIImageView *imView = [[UIImageView alloc] initWithImage:[UIImage imageWithData: imageData]]; 
+0

メインスレッドにデータをロードしないでください。 – rmaddy

+0

Chek Your URLデータ –

+0

URLにあなたのimagedataが格納されていない場合、このタイプのエラーが発生する –

関連する問題