2013-03-08 1 views
0

6 개의 이미지 뷰를 태그로 설정했습니다. 이미지 뷰의 한 탭에서 UIActionSheet를 호출하여 "Take Pic"버튼 & "select Pic"을 표시합니다. 이 모든게 잘 작동합니다. imagePickerController 어디 내가 마침내 선택한 이미지를 설정하는 방법을 내가 어떤 Imageview 사진을 업데이 트 알아. 태그 값을 전달하여 올바른 탭 이미지를 업데이트 할 수있는 방법을 알려주세요.올바른 ImageView를 업데이트하기 위해 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]; 

}

지금은 모든 이미지가 Photo1 Imageview로 설정됩니다.

도움이 될 것입니다.

답변

0

클래스에 인스턴스 변수를 추가하여 선택한 이미지를 저장합니다. 그런 다음 tappedImage: 방법으로 당신이 할 : _selectedImage 유형 UIImageView *의 인스턴스 변수입니다

_selectedImage = (UIImageView *)sender.view; 

.

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

감사 @rmaddy ...하지만 지금은 하나의 이미지 뷰는 탭을 인식한다 :

그런 다음 imagePickerController 방법, 당신은 할 수 있습니다. 사진 2 탭만 작동하고 actionSheet를 당기는 것과 같습니다. 내가 사진 1을 클릭했을 때 그것도 (무효) tappedImage : 코드에 없다. – simi

+0

내가 게시 한 코드는 그런 문제를 일으키지 않습니다. 나는 하나 이상의 제스처 인식기를 하나 이상의 뷰와 함께 사용할 수 없다는 것이 문제라고 생각한다. 각보기에는 자체 인식기가 필요합니다. – rmaddy

+0

음, 태그 정보를 얻으려면 코드가 완벽합니다 ... 감사합니다. 나는 내 코드에서 실수를 할 수 있는지 궁금했다. 각 이미지보기에는 별도의 제스처 인식기가 있습니다. – simi