Я очень новичок в iPhone, я работаю с UITapGestureRecognizer на пользовательском элементе управления KASlideShow одним нажатием. Я добавил KASlideShow, используя XIB, чтобы слайдировать три изображения через несколько интервалов. Моя проблема в том, что я не получаю правильный индекс после нажатия на изображение. Не могли бы вы помочь мне, где моя ошибка в моем коде ниже:
UITapGestureRecognizer *tapGestureRecognizerInstruction = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(handleTapOnView:)];
[tapGestureRecognizerInstruction setNumberOfTapsRequired:1];
tapGestureRecognizerInstruction.delegate = self;
slideshow.delegate = self;
[slideshow setDelay:1]; // Delay between transitions
[slideshow setTransitionDuration:.5]; // Transition duration
[slideshow setTransitionType:KASlideShowTransitionSlide];
[slideshow setImagesContentMode:UIViewContentModeScaleAspectFill];
[slideshow addGestureRecognizer:tapGestureRecognizerInstruction];
arraySlideShowImages = [[NSMutableArray alloc] initWithObjects:[UIImage imageNamed:@"1.jpg"], [UIImage imageNamed:@"2.jpg"], [UIImage imageNamed:@"3.jpg"],nil]; //array of images
for (int i=0; i<[arraySlideShowImages count]; i++) {
slideshow.tag = i;
[slideshow addImage:[arraySlideShowImages objectAtIndex:i]];
}
[slideshow start];
-(void)handleTapOnView:(id)sender
{
UIGestureRecognizer *recognizer = (UIGestureRecognizer*)sender;
KASlideShow * slideshow1 = (KASlideShow *)recognizer.view;
NSLog(@"slide show tag is = %ld", (long)slideshow1.tag);
}
Каждый раз, когда я получаю «тег слайд-шоу» 2, я хочу отобразить конкретное выбранное изображение в полноэкранном режиме. Пожалуйста, предложите мне добиться правильного тега.
Спасибо!
[slideShow tag]
после вашегоfor loop
, вы можете понять, в чем проблема. Вместо этого вы можете получитьcurrentIndex
. - person Larme   schedule 20.08.2014