Как панорамировать набор изображений с интервалами - PullRequest
0 голосов
/ 06 апреля 2011

Я хочу показать UIPanGestureRecognizer (эффект панорамирования) на UIImageView без события касания.

спасибо

1 Ответ

1 голос
/ 06 апреля 2011

Из того, что я собрал через ваши комментарии:

Вам нужно инкапсулировать несколько UIImageViews в UIScrollView.Затем вам нужно включить прокрутку на ScrollView, но отключить взаимодействие с пользователем.Вы можете сделать это через XIB.

Затем вам нужно будет установить NSTimer и в функции обработчика добавить анимацию, как показано ниже:

NSTimer *timer;

timer = [NSTimer scheduledTimerWithTimeInterval: 10.00
             target: self
             selector: @selector(handleTimer:)
             userInfo: nil
             repeats: YES];

- (void) handleTimer: (NSTimer *) timer
{
    [UIView animateWithDuration:0.5
        animations:^{ 
            ImageView1.x+=ImageView1.width;
            ImageView2.x+=ImageView2.width;
            ImageView3.x+=ImageView3.width;
        }];
}

FYI UIPanGestureRecognizer фактически распознает касание и развернуть движение влево / вправо.Вы можете перемещать изображение, вид или что-либо еще, перемещая его координаты в анимационном блоке, как указано выше;но он не имеет ничего общего с UIPanGestureRecognizer, потому что он управляет фактическим событием касания.

...