0

タグが設定された6つのImageviewがあります。イメージビューを1回タップするだけで、UIActionSheetを呼び出して、[写真を撮る]ボタンと[写真を選択する]ボタンを表示します。これはすべて正常に機能します。選択した画像を最終的に設定したimagePickerControllerで、写真を更新するImageviewを確認するにはどうすればよいですか。タグ値を渡して、タップされた正しい画像を更新する方法を教えてください。

これが私のコードです。

viewDidLoad

UITapGestureRecognizer *tapGestureRecognizer = [[UITapGestureRecognizer alloc]
                                             initWithTarget:self
                                             action:@selector(tappedImage:)];

tapGestureRecognizer.numberOfTapsRequired = 1;
[self.photo1 addGestureRecognizer:tapGestureRecognizer];
[self.photo2 addGestureRecognizer:tapGestureRecognizer];
[self.photo3 addGestureRecognizer:tapGestureRecognizer];
[tapGestureRecognizer setDelegate:self];

tappedImage

- (void)tappedImage:(UIGestureRecognizer *)sender {
{

    UIActionSheet *actionSheet = [[UIActionSheet alloc]
                              initWithTitle:@"Add a Picture"
                              delegate:self
                              cancelButtonTitle:@"Cancel"
                              destructiveButtonTitle:nil
                              otherButtonTitles:@"Take Picture",@"Select Picture", nil];
            [actionSheet showInView:self.view];

}

}

imagePickerController

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)editingInfo {
[picker dismissModalViewControllerAnimated:YES];
[photo1 setImage:image];

}

今のところ、すべての画像はPhoto1Imageviewに設定されています。

どんな助けでも大歓迎です。

4

1 に答える 1

0

選択した画像を保存するインスタンス変数をクラスに追加します。次に、あなたのtappedImage:方法であなたはします:

_selectedImage = (UIImageView *)sender.view;

_selectedImageタイプのインスタンス変数はどこにありますかUIImageView *

次に、このimagePickerControllerメソッドで次のことができます。

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)editingInfo {
    [picker dismissModalViewControllerAnimated:YES];
    [_selectedImage setImage:image];
}
于 2013-03-08T15:46:12.707 に答える