2013-08-19 4 views
0

화면을 캡처하려고하는데 이미지 뷰에 하나의 이미지 만있을 때 완벽하게 작동하지만 .... UIImageView를 애니메이션화하면 빈 스크린 샷 ..UIImageView의 스크린 샷을 캡쳐하는 방법

CGRect rect = [self.view bounds]; 
    UIGraphicsBeginImageContext(rect.size); 
    CGContextRef context = UIGraphicsGetCurrentContext(); 
    [self.view.layer renderInContext:context]; 
    UIImage *capturedScreen = UIGraphicsGetImageFromCurrentImageContext(); 
    UIGraphicsEndImageContext(); 
    UIImageWriteToSavedPhotosAlbum(capturedScreen, nil, nil, nil); 

답변

0

내가 내 대답은 오른쪽 (또는) 잘못인지 모르겠지만, 난 Iphone_bharat

-(void)change 
    { 
     if (i>=imags.count-1) 
     i=0; 
     else 
     i++; 
    } 
    -(void)images  
     { 
     NSArray *imagenames = @[@"1.png",@"b.png",@"c.png"]; 
     int j; 
     NSMutableArray *images= [[NSMutableArray alloc]init]; 
      for (j=0; j<imagenames.count; j++) 
       [images addObject:[UIImage imageNamed:[imagenames objectAtIndex:j]]]; 
     self.imageview1.animationImages = images; 
     self.imageview1.animationDuration =1; 
     [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(change) userInfo:nil repeats:YES]; 
     [self.bground startAnimating]; 
     } 
     -(IBAction)captureImage:(id)sender 
     { 
     self.imageview2.image = [images objectAtIndex:i]; 
     CGRect rect = [self.view bounds]; 
     UIGraphicsBeginImageContext(rect.size); 
     CGContextRef context = UIGraphicsGetCurrentContext(); 
     [self.view.layer renderInContext:context]; 
     UIImage *capturedScreen = UIGraphicsGetImageFromCurrentImageContext(); 
     UIGraphicsEndImageContext(); 
     UIImageWriteToSavedPhotosAlbum(capturedScreen, nil, nil, nil); 


     } 
에 ... 이런 식으로 같은 i got some code from here 덕분에 그것을 시도
관련 문제