0

スクロールビューからフォトアルバムに最初の画像のみを保存するときに、常に2番目または他の画像を選択すると、スクロールビューから最初の画像のみが保存されるのはなぜですか?

- (void)handleLongPress:(UILongPressGestureRecognizer*)gestureRecognizer{
//CGPoint gesturePoint = [_gesture locationInView:_imageScrollView]; 
if (gestureRecognizer.state == UIGestureRecognizerStateBegan){
    UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:nil delegate:self cancelButtonTitle:@"Cancel" destructiveButtonTitle:nil otherButtonTitles:@"Save Photo", nil];
    actionSheet.actionSheetStyle = UIActionSheetStyleBlackTranslucent;
    [actionSheet showInView:self.view];
    [actionSheet release];

}}

-(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex {
switch (buttonIndex) {
    case 0:
         for (int i = 0; i<=61; i++) {
             NSString *imageName = [NSString stringWithFormat:@"image%d.png", i];
             UIImage *image = [UIImage imageNamed:imageName];
             UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
             //if     (CGRectContainsPoint(_myButton.frame,gesturePoint)){  
        UIImageWriteToSavedPhotosAlbum(imageView.image, self, @selector(image: didFinishSavingWithError:contextInfo:), nil);

       break;

    default:
        break;
} }}

選択した画像を常に保存する必要があります。

助けてください。

ありがとう

4

1 に答える 1

0

コードにはいくつかの問題があります。

  1. あなたは作成してUIImageViewいますが、それを使用していません。画像だけです。このオブジェクトは実際には使用できません。

  2. image0.pngimage1.pngimage2.png本当に存在するかどうかを確認する必要があります。簡単なNSLogステートメントで表示されます。もしそうなら、彼らnilが救われないことは驚くべきことではありません。

  3. コードのどこにも選択を参照する場所はありません。ハードコードされた 62 個の画像を使用するだけです。存在する場合、メソッドはこれらをアプリケーションバンドルimageNamedから引き出します。

于 2012-10-10T20:56:29.823 に答える