0

こんにちは、私はドキュメントディレクトリにこのように画像をドキュメントディレクトリに保存しています。画像はsaveimage0.png、saveimage1.png ...などのように保存されています。この画像はドキュメントに入力されているようです。挿入は適切に機能していますが、loadimage メソッドでドキュメント フォルダーから複数の画像を取得する方法が正しいか間違っているか、tkae 画像を配列に保存してビューに表示する必要があります

int num=0;
-(void)imagePickerController:(UIImagePickerController *)picker
didFinishPickingMediaWithInfo:(NSDictionary *)info
{


    NSString *mediaType = [info
                           objectForKey:UIImagePickerControllerMediaType];
    [self dismissModalViewControllerAnimated:YES];
    if ([mediaType isEqualToString:(NSString *)kUTTypeImage]) {
        UIImage *image = [info
                          objectForKey:UIImagePickerControllerOriginalImage];

        imageView.image = image;
        UIImage *image1 =imageView.image;
        NSData *myData = [UIImagePNGRepresentation(image1) retain];
        imagedata = myData;


        if (newMedia)
            UIImageWriteToSavedPhotosAlbum(image,
                                           self,  
                                           @selector(image:finishedSavingWithError:contextInfo:),
                                           nil);

        NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, 
                                                             NSUserDomainMask, YES);
        NSString *documentsDirectory = [paths objectAtIndex:0];

        NSString *path = [documentsDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"saveimage%d.png",num]];
        num += 1; // for next t
        NSData* data = UIImagePNGRepresentation(image);
        [data writeToFile:path atomically:YES];



    }
    else if ([mediaType isEqualToString:(NSString *)kUTTypeMovie])
    {
        // Code here to support video if enabled
    }
}

と同じドキュメントディレクトリから画像を取得しています

int value;
- (UIImage*)loadImage
{
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, 
                                                         NSUserDomainMask, YES);
       NSString *documentsDirectory = [paths objectAtIndex:0];


    // NSString* path = [documentsDirectory stringByAppendingPathComponent: 
   //[NSString stringWithString: @"test.png"] ];
    NSString* path = [documentsDirectory stringByAppendingPathComponent: 
                      [NSString stringWithFormat:  @"savedImage-",@"%@-%d.png", value]];

    value += 1;

    UIImage* image = [UIImage imageWithContentsOfFile:path];

    return image;


}
4

1 に答える 1

2

答えはあなたの質問の中にあります。

次を使用して画像を保存しています:

NSString *path = [documentsDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"saveimage%d.png",num]];

フォーマットは次のとおりです: saveimage0.png

そして、あなたは次のように取得しています:

NSString* path = [documentsDirectory stringByAppendingPathComponent: 
                      [NSString stringWithFormat:  @"savedImage-",@"%@-%d.png", value]];

形式は次のとおりsavedImage-aValue-aValue.pngです。

次のように変更します。

 NSString* path = [documentsDirectory stringByAppendingPathComponent: 
                          [NSString stringWithFormat:  @"savedimage%d.png", value]];
于 2013-01-02T05:48:53.757 に答える