2013-03-08 2 views
0

У меня есть 6 изображений с тегами. В одном касании изображения, я вызываю UIActionSheet, чтобы показать кнопку «Take Pic» & «выберите 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 *)sender.view; 

где _selectedImage ваш экземпляр переменной типа UIImageView *.

Затем в методе imagePickerController, вы можете сделать:

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

Благодаря @rmaddy ... но теперь только один ImageView признает кран. как только фото2 tap работает и подтягивает actionSheet. когда я нажимаю на photo1, это даже не происходит в (void) tappedImage: code. – simi

+0

Код, который я разместил, не вызовет такой проблемы. Я думаю, проблема в том, что вы не можете использовать один распознаватель жестов с несколькими видами. Каждому виду нужен свой собственный распознаватель. – rmaddy

+0

ну, ваш код идеально подходит для получения информации тега ... спасибо u. Я просто задавался вопросом, может ли у вас ошибка в коде. для каждого изображения, i hv отдельный распознаватель жестов. – simi

Смежные вопросы