0

サーバーから画像をダウンロードして、1秒ごとに新しい画像で画像ビューを更新しようとしています。ダウンロードはバックグラウンド スレッドで行われます。以下にコードを示します

 NSTimer *timer = [NSTimer timerWithTimeInterval:0.5
                                         target:self
                                       selector:@selector(timerFired:)
                                       userInfo:nil repeats:YES];
[[NSRunLoop mainRunLoop] addTimer:timer forMode:NSRunLoopCommonModes];



-(void)timerFired:(id)sender
 {
    NSURLRequest *request=[[NSURLRequest alloc]initWithURL:[NSURL      


    URLWithString:@"http://192.168.4.116:8080/RMC/ImageWithCommentData.jpg"]];

    NSOperationQueue *queueTmp = [[NSOperationQueue alloc] init];

   [NSURLConnection sendAsynchronousRequest:request queue:queueTmp completionHandler:^(NSURLResponse *response, NSData *data, NSError *error)
   {
     if ([data length] > 0 && error == nil)
     {

         [self performSelectorOnMainThread:@selector(processImageData:) withObject:data waitUntilDone:TRUE modes:nil];

     }

     else if ([data length] == 0 && error == nil)
     {

     }
     else if (error != nil)
     {



     }

 }];
}


-(void)processImageData:(NSData*)imageData
{
  NSLog(@"data downloaded");
  [self.hmiImageView setImage:[UIImage imageWithData:imageData]];
 }

画像がダウンロードされています。ただし、ProcessImageData メソッドは呼び出されません。この問題を解決するのを手伝ってください。

4

1 に答える 1