如何在iPhone应用程序中将图像集保存到照片库

时间:2012-06-13 13:37:13

标签: iphone ios4 iphone-sdk-3.0

我必须通过一键操作将一些图像保存到照片库。

for (j=85; j<100; j++)
       {
           UIImage *saveImage=[UIImage imageNamed:[NSString stringWithFormat:@"%d.png",j]];
           UIImageWriteToSavedPhotosAlbum(saveImage,self,nil,nil);
       }

我使用上面的代码。图像名称以85.png开头,以100.png结尾。保存4或5个图像,然后在输出窗口中显示一些行,如下所示

-[NSKeyedUnarchiver initForReadingWithData:]: data is NULL

任何人都可以解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

延迟一段时间后调用Save方法。图像需要一段时间才能保存在照片库中。当您连续保存多个图像时,处理覆盖和保存图像的方法不起作用。

因此,每张图片至少延迟0.5秒。我在我的案例中使用了这个,见下面的方法...

首先声明

NSInteger frameCount; 
NSTimer pauseTimer;

全局。并制作方法名称

-(void)startTimer;

现在在您的保存按钮上单击调用此方法

-(void)yourSaveButtonClick:(id)Sender
{
    [self startTimer];
}

-(void)startTimer
{
    frameCount = 85;
pauseTimer = [NSTimer scheduledTimerWithTimeInterval:0.5 target:self selector:@selector(myFunctionForSaveToPhoneLibrary) userInfo:nil repeats:YES];

}

-(void)myFunctionForSaveToPhoneLibrary
{

UIImage *saveImage=[UIImage imageNamed:[NSString stringWithFormat:@"%d.png",frameCount]];
UIImageWriteToSavedPhotosAlbum(saveImage,self,nil,nil);

frameCount++;
    if(frameCount>=100)
    {
     [pauseTimer invalidate];
     NSLog(@"Images are saved successfully");
    }
}

它会工作.....谢谢!!